Commit graph

93 commits

Author SHA1 Message Date
Philipp Hörist
4bcdbde2c8 Move httpupload into modules 2018-07-07 01:49:50 +02:00
Philipp Hörist
d45fa13ee9 Refactor atom into new module and disable it
Gajim lacks a good UI for microblogging

Fixes #9218
2018-07-06 21:02:06 +02:00
Philipp Hörist
bbf3a544e8 Refactor UserLocation into own module 2018-07-05 19:38:03 +02:00
Philipp Hörist
14f088c2d9 Refactor UserMood into own module 2018-07-05 19:37:51 +02:00
Philipp Hörist
a4350a812b Refactor UserTune into own module 2018-07-05 00:16:42 +02:00
Philipp Hörist
b7775afd0c Refactor UserActivity and PEP into own modules 2018-07-03 20:00:31 +02:00
Philipp Hörist
2ca0ca38a5 Refactor Pubsub/Bookmarks/UserAvatar into own modules 2018-07-01 22:35:56 +02:00
Philipp Hörist
0dde1759e8 Make Profile a GtkApplicationWindow
Fixes #9180
2018-07-01 13:30:13 +02:00
Alexander Krotov
7fa4c9e1c2 Spellcheck 2018-06-28 23:37:34 +02:00
Philipp Hörist
129f72bf8e Refactor http auth code into own module 2018-06-25 23:47:06 +02:00
Alexander Krotov
d871dcdcb1 More spelling fixes 2018-06-22 01:47:29 +03:00
Philipp Hörist
631740b66b MUC: Fix voice request
Fixes #9159
2018-06-01 20:58:09 +02:00
Philipp Hörist
4bed8ace95 Refactor Notifications
- Use icon names instead of path
- Move PopupNotificationWindow into notify.py
- Make popup class method instead of module method
- Dont use sessions to get control on notification action Fixes #9140
- Add has_focus() method to ChatControlBase
2018-06-01 17:48:05 +02:00
Philipp Hörist
32b74b459e Remove support for ESessions
Fixes #5294
2018-05-28 18:21:45 +02:00
Philipp Hörist
b749eccf51 Fix idle detection
Fixes #9149
2018-05-27 10:51:57 +02:00
Philipp Hörist
c5df74c509 Refactor idle module
- Get rid of sleepy.py, handle everything in idle.py
- Introduce one Monitor class that handles everything
2018-05-21 02:32:33 +02:00
Philipp Hörist
2636e3449f Refactor avatar publishing
- Publish avatars with a size of 200x200
- Add AvatarSize.PUBLISH so we can easily change it in the future
- Dont upscale small avatars on publish
- Use surfaces for displaying the avatar in ProfileWindow and VcardWindow
because this scales correctly on HiDPI screens
2018-05-20 01:28:12 +02:00
Philipp Hörist
3c22ab752a Bring control to front when notification is clicked
if autopopup_chat_opened is activated no control is found because
the event that triggered the notification is already deleted when
the notification is clicked by the user. So instead of searching
for the event, search for the control with jid/account.

Fixes #9124
2018-05-12 23:36:52 +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
Philipp Hörist
bcf27cb3c1 Support for PKIX over Secure HTTP (POSH)
Fixes #9083
2018-05-01 21:08:26 +02:00
Philipp Hörist
c534d3a147 Refactor SSL errors
Dont save fingerprints to config and check certs with our own methods.
We should trust openssl to do all necessary checks.

Self signed certs can be added to cacert.pem and will not show up as
an error until the cert changes.

nbxmpp now saves all ssl errors and passes them, so now we loop over
all errors until all are confirmed or ignored by the user

Also cacerts are now saved in utf-8
2018-05-01 14:03:20 +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
Philipp Hörist
e265514d88 Detect dependencys only on demand
This allows us to import the app module without triggering
dependency detection

Also add is_installed() for checking if a dependency is installed and
disable_dependency() in case we dont want to use a dependency
2018-04-24 19:36:33 +02:00
Philipp Hörist
4a26ecb12c Refactor configpaths
- init configpaths earlier so logging can access it to store debug logs
- First step for more consistency across Gajim when looking up paths

  Recommended usage for the future:
  app.configpaths.get()
  configpaths.get()
2018-04-21 12:48:57 +02:00
Philipp Hörist
290e761f88 Add support for Room Avatars
- Groupchats promote a vcard hash with presence

Refactoring:

- Dont delete groupchat contacts if they are maximized from the roster
- Roster and GroupchatControl use the same contact object
2018-04-19 22:11:41 +02:00
Yann Leboulanger
a9a6b048fb set a transient_for for join groupchat dialog when needed. Fixes #8994 2018-03-28 16:14:54 +02:00
Philipp Hörist
6f55cf3dd4 Fix some problematic imports 2018-03-26 00:19:59 +02:00
Yann Leboulanger
faa88819a1 improve some strings 2018-03-25 16:26:29 +02:00
Yann Leboulanger
ba48e4530b don't just ignore when we receive an error to vcard request. Fixes #8965 2018-03-23 22:17:59 +01:00
Philipp Hörist
3d980fd6f5 Show image preview in filechooser dialog 2018-03-21 20:24:20 +01:00
Philipp Hörist
abdca0eaac Fix TextView scrolling
Fixes #8813
2018-03-20 22:19:30 +01:00
Philipp Hörist
9de427f6fa Allow multiple file uploads
Fixes #8957
2018-03-17 20:44:14 +01:00
Philipp Hörist
8f2bc1e1c6 Handle connection lost notification click
Fixes #8823
2018-03-15 18:37:34 +01:00
Philipp Hörist
1935a4f40e Disable ZeroConf account by default 2018-03-07 20:24:08 +01:00
Philipp Hörist
52fa57795a Better emoticon theme fallback strategy
Fallback must be happening in init_emoticon() instead of PreferencesWindow
2018-02-22 00:37:54 +01:00
Philipp Hörist
f1aceae214 Fix avatar ratio
Fixes #8907
2018-02-19 22:02:31 +01:00
Philipp Hörist
877b754ef3 Simplfy writing to config file
- use `with` statement and open() instead of os.open()
- execute run() on dialog, otherwise sys.exit() is called immediatly
2018-02-12 23:39:50 +01:00
Philipp Hörist
6deedb1743 Only use logind listener on linux 2018-01-29 23:12:58 +01:00
Philipp Hörist
232dc1dda0 Scale Avatars for HiDPI Screens 2018-01-29 00:06:31 +01:00
Bronko
3a3be94aa8 integrate httpupload plugin into gajim core
add new config option 'filetransfer_preference'
add drag and drop support for file upload
2018-01-22 17:29:27 +01:00
Philipp Hörist
71fb3d0b4f Improve network speed on Windows
Call select.select() with the smallest timeout possible
2018-01-21 21:52:32 +01:00
Philipp Hörist
4aadc00bd6 Revert "Improve speed of Windows client"
This reverts commit 45e3139bd0
2018-01-21 20:45:32 +01:00
Philipp Hörist
45e3139bd0 Improve speed of Windows client
This calls on each mainloop cylce select.select() instead of every
20 ms.
2018-01-20 23:21:39 +01:00
André Apitzsch
6f025a1d4a Remove some unused imports 2018-01-12 00:21:11 +01:00
André Apitzsch
e89e7c3123 Port screensaver listening to GTK dbus 2018-01-05 23:33:37 +01:00
André Apitzsch
81a039854f Port music_track_listener to GTK dbus 2018-01-04 21:49:16 +01:00
Philipp Hörist
361ad92b26 Remove unused code 2017-12-29 19:08:05 +01:00
Philipp Hörist
23de7d5331 Use higher level API to focus windows
set_active_tab() already calls present(), no need to call it afterwards
again
2017-12-26 21:55:19 +01:00
André Apitzsch
f3bde561a3 GUI interface: fix resource warning 2017-12-18 23:14:22 +01:00
Philipp Hörist
e3effdcb6c Refactor SubscriptionWindow 2017-12-17 22:30:16 +01:00