Commit Graph

20 Commits

Author SHA1 Message Date
Philipp Hörist ec76d8ac3b Only use absolute imports from gtk module
- This reduces import cycles
2018-10-07 00:46:55 +02:00
Philipp Hörist f163d90a44 Dont move window between virtual desktops
Its the job of the window manager to restore a window to the correct
location
2018-10-07 00:46:50 +02:00
Philipp Hörist c156f02cc0 Fix redefined-builtin pylint errors 2018-10-07 00:46:48 +02:00
Philipp Hörist e842298724 Fix bad-whitespace pylint errors 2018-10-07 00:46:48 +02:00
Philipp Hörist cebd83d436 Fix unused-variable pylint errors 2018-10-07 00:46:44 +02:00
Philipp Hörist 7cf53e901b Fix useless-object-inheritance pylint errors 2018-10-07 00:46:40 +02:00
Philipp Hörist ebc0dd4536 Fix license comment format
every linter flags this as an error
2018-10-07 00:46:35 +02:00
Philipp Hörist a457a9ac21 Move filechoosers into gtk module 2018-08-19 17:44:17 +02:00
Philipp Hörist 3a3b5aff20 Move some dialogs into gtk module 2018-07-18 00:15:46 +02:00
Sophie Herold f89169517e Rework Plugins Dialog 2018-07-16 22:38:08 +02:00
Philipp Hörist c38db84e04 Refactor FileChooserDialogs
Use GtkFileChooserDialog only when we need previews, default to
NativeFileChooser otherwise.

GtkFileChooserDialogs have a long list of issues, so lets only use it
if we gain something from it.

Flatpak should only run NativeFileChoosers because its sandboxed and
this is needed for security purposes. As a result of that, Flatpak Users
dont have image previews in the FileOpenDialogs

Refactor all FileChoosers for a more simple approach when we use them

Add a new SendFileDialog, so we dont have to put widgets into the FileChooser
which forces non-native Dialogs.
2018-05-05 09:22:08 +02:00
Markus Wintermann 49bfc1f226 Add support for dynamic reloading of plugins
‎* rename the remove_plugin function to uninstall_plugin because it
deletes files on the disc and uninstall is the label of the button which
triggers this function
* added a new remove_plugin function, which deactivates the plugin (if
needed), removes it from the list of managed plugins and deletes the
contents of sys.modules
2018-04-28 13:31:19 +02:00
Philipp Hörist 105427b8fd Use consistent way to get paths
This lets us now import the app module without setting paths
2018-04-25 20:49:37 +02:00
André Apitzsch 2872405f07 Fix deprecation warnings 2017-10-07 21:01:27 +02:00
Philipp Hörist b9aba06f71 Remove unused variables 2017-09-29 02:41:03 +02:00
Philipp Hörist dd39067ef7 Allow Plugins to use other dialogs 2017-09-29 02:40:01 +02:00
André Apitzsch 89c7eb6e6a Rename gajim.common.gajim to avoid name conflicts 2017-08-18 20:03:20 +02:00
André Apitzsch efec098aef Use absolute imports 2017-08-18 19:48:48 +02:00
Philipp Hörist 0eca29d484 Fix memory leak in plugins window
- remove gui extension point on close, to remove the reference the plugin manager holds to the Class.

- reduce scope of var that holds reference to Gtk.Builder(). We have to be careful with
Gtk.Builder, because it can hold a reference to our Class (methods bound to signals) which creates a reference cycle
which python is not able to detect. Hence neither Gtk.Builder nor our Class are garbage collected.
Why this is not detected as a reference cylce is unclear at the moment.

There are two approaches to circumvent the problem:

1. we lose our reference to Gtk.Builder when closing the window, which lets python garbage
collect the builder, afterwards it can garbage collect our class.

2. we reduce the scope of the var that holds a reference to Gtk.Builder, so that the builder
can be garbage collected at the end of __init__.

I chose to reduce the scope because the builder is not needed class wide.
2017-07-10 01:15:30 +02:00
André Apitzsch 125ce523e4 Rename src directory 2017-07-02 17:25:47 +02:00
Renamed from src/plugins/gui.py (Browse further)