#include <PrivacyPage.hpp>
Public Member Functions | |
| PrivacyPage () | |
| ~PrivacyPage () | |
Private Member Functions | |
| void | run_privacy_script_async (bool unblock) |
| bool | is_daemon_active () |
| void | start_privacy_daemon () |
| void | unblock_devices_local () |
| void | save_privacy_state (bool enabled) |
| bool | load_privacy_state () |
| std::vector< std::string > | detect_active_devices () |
| void | start_monitor_thread () |
| void | monitor_loop () |
| void | show_permission_popup (const std::string &process_name) |
| void | show_next_alert () |
| void | on_toggle_privacy () |
| void | on_refresh_clicked () |
| void | setup_auto_refresh_toggle () |
| void | update_process_list () |
| void | manual_unlock_devices () |
| void | write_log (const std::string &msg) |
Private Attributes | |
| Gtk::Label | lbl_title_ |
| Gtk::Switch | switch_webcam_ |
| Gtk::Button | btn_refresh_ |
| Gtk::CheckButton | chk_auto_refresh_ |
| Gtk::ScrolledWindow | scroller_ |
| Gtk::TextView | txt_processes_ |
| Gtk::Label | lbl_status_ |
| std::thread | monitor_thread_ |
| std::atomic< bool > | monitor_running_ {false} |
| std::set< std::string > | known_processes_ |
| sigc::connection | auto_refresh_conn_ |
| std::atomic< bool > | toggle_busy_ {false} |
| Gtk::Button | btn_unlock_ |
| std::atomic< bool > | devices_blocked_ {false} |
| BastionGuard::AliveFlag | alive_ = BastionGuard::make_alive_flag() |
Definition at line 34 of file PrivacyPage.hpp.
| PrivacyPage::PrivacyPage | ( | ) |
Definition at line 180 of file PrivacyPage.cpp.
References _, alive_, btn_refresh_, btn_unlock_, chk_auto_refresh_, BastionGuard::if_alive(), is_daemon_active(), lbl_status_, lbl_title_, load_privacy_state(), manual_unlock_devices(), monitor_running_, on_refresh_clicked(), on_toggle_privacy(), scroller_, setup_auto_refresh_toggle(), start_monitor_thread(), start_privacy_daemon(), switch_webcam_, txt_processes_, unblock_devices_local(), update_process_list(), and write_log().
| PrivacyPage::~PrivacyPage | ( | ) |
Definition at line 325 of file PrivacyPage.cpp.
References _, alive_, monitor_running_, monitor_thread_, and write_log().
|
private |
Definition at line 356 of file PrivacyPage.cpp.
References is_noise_process(), parent_is_noise(), read_cmdline(), read_exe_path(), and read_text_file().
Referenced by monitor_loop(), and update_process_list().
|
private |
Definition at line 337 of file PrivacyPage.cpp.
References bg_process::run().
Referenced by PrivacyPage().
|
private |
Definition at line 851 of file PrivacyPage.cpp.
References _.
Referenced by PrivacyPage().
|
private |
Definition at line 929 of file PrivacyPage.cpp.
References _, alive_, btn_unlock_, devices_blocked_, BastionGuard::if_alive(), lbl_status_, run_privhelper_pkexec(), update_process_list(), and write_log().
Referenced by PrivacyPage().
|
private |
Definition at line 453 of file PrivacyPage.cpp.
References _, alive_, detect_active_devices(), BastionGuard::if_alive(), known_processes_, monitor_running_, show_permission_popup(), and write_log().
Referenced by start_monitor_thread().
|
private |
Definition at line 673 of file PrivacyPage.cpp.
References _, lbl_status_, update_process_list(), and write_log().
Referenced by PrivacyPage().
|
private |
Definition at line 865 of file PrivacyPage.cpp.
References _, lbl_status_, run_privacy_script_async(), save_privacy_state(), switch_webcam_, toggle_busy_, and write_log().
Referenced by PrivacyPage().
|
private |
Definition at line 885 of file PrivacyPage.cpp.
References _, alive_, BastionGuard::if_alive(), lbl_status_, monitor_running_, monitor_thread_, run_privhelper_pkexec(), start_monitor_thread(), switch_webcam_, toggle_busy_, update_process_list(), and write_log().
Referenced by on_toggle_privacy().
|
private |
Definition at line 835 of file PrivacyPage.cpp.
References _, and write_log().
Referenced by on_toggle_privacy().
|
private |
Definition at line 681 of file PrivacyPage.cpp.
References _, auto_refresh_conn_, chk_auto_refresh_, lbl_status_, update_process_list(), and write_log().
Referenced by PrivacyPage().
|
private |
Definition at line 500 of file PrivacyPage.cpp.
References _, alert_queue_, alive_, btn_unlock_, current_alert_, devices_blocked_, BastionGuard::if_alive(), lbl_status_, resource(), run_privhelper_pkexec(), show_next_alert(), update_process_list(), and write_log().
Referenced by show_next_alert(), and show_permission_popup().
|
private |
Definition at line 490 of file PrivacyPage.cpp.
References alert_queue_, alive_, current_alert_, BastionGuard::if_alive(), and show_next_alert().
Referenced by monitor_loop().
|
private |
Definition at line 448 of file PrivacyPage.cpp.
References _, monitor_loop(), monitor_thread_, and write_log().
Referenced by PrivacyPage(), and run_privacy_script_async().
|
private |
Definition at line 342 of file PrivacyPage.cpp.
References _, bg_process::run(), and write_log().
Referenced by PrivacyPage().
|
private |
Definition at line 348 of file PrivacyPage.cpp.
References _, run_privhelper_pkexec(), and write_log().
Referenced by PrivacyPage().
|
private |
Definition at line 723 of file PrivacyPage.cpp.
References _, alive_, detect_active_devices(), and write_log().
Referenced by manual_unlock_devices(), on_refresh_clicked(), PrivacyPage(), run_privacy_script_async(), setup_auto_refresh_toggle(), and show_next_alert().
|
private |
Definition at line 783 of file PrivacyPage.cpp.
References _.
Referenced by manual_unlock_devices(), monitor_loop(), on_refresh_clicked(), on_toggle_privacy(), PrivacyPage(), run_privacy_script_async(), save_privacy_state(), setup_auto_refresh_toggle(), show_next_alert(), start_monitor_thread(), start_privacy_daemon(), unblock_devices_local(), update_process_list(), and ~PrivacyPage().
|
private |
Definition at line 92 of file PrivacyPage.hpp.
Referenced by manual_unlock_devices(), monitor_loop(), PrivacyPage(), run_privacy_script_async(), show_next_alert(), show_permission_popup(), update_process_list(), and ~PrivacyPage().
|
private |
Definition at line 53 of file PrivacyPage.hpp.
Referenced by setup_auto_refresh_toggle().
|
private |
Definition at line 43 of file PrivacyPage.hpp.
Referenced by PrivacyPage().
|
private |
Definition at line 83 of file PrivacyPage.hpp.
Referenced by manual_unlock_devices(), PrivacyPage(), and show_next_alert().
|
private |
Definition at line 44 of file PrivacyPage.hpp.
Referenced by PrivacyPage(), and setup_auto_refresh_toggle().
|
private |
Definition at line 84 of file PrivacyPage.hpp.
Referenced by manual_unlock_devices(), and show_next_alert().
|
private |
Definition at line 52 of file PrivacyPage.hpp.
Referenced by monitor_loop().
|
private |
Definition at line 47 of file PrivacyPage.hpp.
Referenced by manual_unlock_devices(), on_refresh_clicked(), on_toggle_privacy(), PrivacyPage(), run_privacy_script_async(), setup_auto_refresh_toggle(), and show_next_alert().
|
private |
Definition at line 41 of file PrivacyPage.hpp.
Referenced by PrivacyPage().
|
private |
Definition at line 51 of file PrivacyPage.hpp.
Referenced by monitor_loop(), PrivacyPage(), run_privacy_script_async(), and ~PrivacyPage().
|
private |
Definition at line 50 of file PrivacyPage.hpp.
Referenced by run_privacy_script_async(), start_monitor_thread(), and ~PrivacyPage().
|
private |
Definition at line 45 of file PrivacyPage.hpp.
Referenced by PrivacyPage().
|
private |
Definition at line 42 of file PrivacyPage.hpp.
Referenced by on_toggle_privacy(), PrivacyPage(), and run_privacy_script_async().
|
private |
Definition at line 58 of file PrivacyPage.hpp.
Referenced by on_toggle_privacy(), and run_privacy_script_async().
|
private |
Definition at line 46 of file PrivacyPage.hpp.
Referenced by PrivacyPage().