Compare commits

...

39 Commits

Author SHA1 Message Date
Carsten Haitzler 49c95a3567 0.25.3 2022-02-10 09:56:36 +00:00
Carsten Haitzler 3fc4a1c1c0 notification - fix shadow around extra notifications when all shown
if you show notifications on all screens the extra ones not on the
current screen get a shadow - this is wrong. this fixes that

@fix
2022-02-10 09:52:41 +00:00
Carsten Haitzler 5c7bd88632 gesture - add an option to turn it all on or off
so - some people have issues if we open devices. why... i don't know,
but add an option to toggle this and be conservative and have it off
by default

@fix
2022-02-10 09:52:41 +00:00
Carsten Haitzler 6d3a24be36 backlight - add option for ddc to work or not
just because libddcutil is installed doesnt mean someone always wants
backlight on monitors controlled, so allow an option.
2022-02-10 09:52:41 +00:00
Carsten Haitzler 0269ee1d95 ibar - emit left/right a;ign if gadcon is left/right vertical
@fix
2022-02-10 09:52:41 +00:00
Carsten Haitzler 7355d8d2a9 theme - ibar/ibox label overlay - properly align with text min size
@fix
2022-02-10 09:52:41 +00:00
Carsten Haitzler 6aff4fc3aa move to 0.25.2 for micro release 2022-02-07 19:05:31 +00:00
Carsten Haitzler 18b1b27820 pkgkit - count pkgs total in gadgets
@fix
2022-02-07 19:04:07 +00:00
Carsten Haitzler dd94b435a3 deskmirror - donbt show iconified windows
@fix
2022-02-07 19:04:07 +00:00
Carsten Haitzler d593cf51ff build - fix cc.links for bsd case to use args not link args
@fix
2022-02-07 19:04:07 +00:00
Carsten Haitzler 66b6d770d8 focus - fix some lingering mis-focus issues
finally fix T8980 (i hope)
@fix
2022-02-07 19:04:07 +00:00
Carsten Haitzler e571381227 modules - add procstats to whitelist 2022-02-07 19:04:07 +00:00
Carsten Haitzler 9477828550 pager - don't keep building up more popups on popups on switches
re-use the existing popup and stop stacking more and more.

@fix
2022-02-07 19:04:07 +00:00
Carsten Haitzler 6a72eb3cee efm - recent - fix up mis-sorting on re-load and make icons better
was missing thumbnails - now do them. fix re-sorting of items weirdly
on re-load later.

@fix
2022-02-07 19:04:07 +00:00
Marcel Hollerbach 4814a63d4c e_client: fix more focus weirdness
parent should be raised, even though it is not the modal.
2022-02-07 19:04:07 +00:00
Carsten Haitzler 9dd6a7778c efm - do same mime lookup method as efm in recents menu
@fix
2022-02-07 19:04:07 +00:00
Carsten Haitzler 5a81d09519 desklock settinghs - fix kbd layout list to fill vert
@fix
2022-02-07 19:04:07 +00:00
maxerba e38658b8e9 Updating french and italian translations 2022-02-07 19:04:05 +00:00
Carsten Haitzler 61b73a4ed6 shot - reset cnp flag once cnp'd
otherwise we segv assuming we are doing cnp still and access a null
cnp_file.

@fix
2022-02-07 19:03:09 +00:00
Carsten Haitzler 200fea6e38 focus out - ignore all ungrabs as we unfocus a window that should be
this fixes a boundary case on mouse ungrabs

@fix
2022-02-07 19:03:09 +00:00
Carsten Haitzler 7c0d3f2e2f xkb config - fix segv on close advanced mode dialog
didnt remove the lists with del callbacks that accessed the cfdata
struct to set lisrts to null on del before cfdata was freed...
callback hell. yay.

@fix
2022-02-07 19:03:09 +00:00
Christopher Michael fdd31a87ee e_about: Update copyright year 2022-02-07 19:03:09 +00:00
Carsten Haitzler 48a8a757e5 bz5 - dont ping devices on unpowered adapter
@fix
2022-02-07 19:03:09 +00:00
Carsten Haitzler bbbf550df3 fileman - fix favorites to scale
@fix
2022-02-07 19:03:09 +00:00
Carsten Haitzler 0fa389fc52 bluez5 - dont need the force conenct option it seems - cant find a need
if connected AND trusted it should conenct again next time you power
them on etc. ... so .. let's remove extra option cruft we seemingly
don't need - less confusion for users

@fix
2022-02-07 19:03:09 +00:00
Marcel Hollerbach 0e64bbfc56 focus: leave frame focus setting here
that might cause bugs, however, everything else might end up in a
endless recursion.
2022-02-07 19:03:09 +00:00
Carsten Haitzler 75cf099ee5 bluez mod - on unload deregister gadcon class
fix leak of this class on unload.

@fix
2022-02-07 19:03:09 +00:00
Marcel Hollerbach 35b8f86906 focus: do not revert to another client when client is unfocused
This was a nice idea to fix most focus bugs at once. However, due to the
runtime of e many things can get "randomly" focused, for exmaple: volume
control on the frame, internal dialogs, config value screens when
grabbing for keys, widgets when they get created in a gadget. The list
is quite long. However, fixing all those little bugs is hard and partly
impossible as the behaviour is correct in the context of a toolkit, not
in the context of a compositor.

Long term we should split window-focus and canvas-focus from each other,
then bugs like these would not be a problem anymore.
2022-02-07 19:03:09 +00:00
maxerba 9881953815 Updating french and portuguese translations 2022-02-07 19:03:09 +00:00
Carsten Haitzler a034e94882 e focus - fix previous commit segv on no windows left
if window deleted is the focused on... oops - BOOM. not handled.
handle it. also revert x focus to root so bindings work.

fixes previous 2d86d75139

@fix
2022-02-07 19:03:09 +00:00
Marcel Hollerbach cabb9aff01 add forgotten header define 2022-02-07 19:03:09 +00:00
Marcel Hollerbach 2e99d11a1b e_client: revert focus instead of setting it to NULL
When closing a client a few different things can happen:
1. Client hides, this will destroy the e_client object, which will
   reverts focus to another client.
2. Client hook del, this will recover focus to the root window if no
   e_client is focused.
3. Client unfocus event, setted the focused to NULL and sets the focus field to 0.

when first 1 happens then 2 or 3 everything is fine. However, it seems
that sometimes first 3 happend, then 2, then 1. Which results in focus
beeing first NULL, then recovered to the root window, resulting in the
wrong things happening.
2022-02-07 19:03:09 +00:00
Carsten Haitzler 91877ed2d3 e_icon - switch from edj/std icon to custom img file properly
@fix
2022-02-07 19:03:09 +00:00
Carsten Haitzler 0842e8d33a systray - add more debugging to find clients that act oddly
@fix
2022-02-07 19:03:09 +00:00
Carsten Haitzler b54511ca77 release - 0.25.1 2022-01-03 00:52:26 +00:00
Carsten Haitzler 2ee244376e e - border list - fix list to filter volume out
the volume style is not a border but the gadget - a mistake made long
ago when this was added. cant change now due to theme compat to filter
out in code

@fix
2022-01-03 00:47:29 +00:00
Carsten Haitzler 1077b09bb7 gesture - vm (vbox) detect hack to work around xorg no display bug
so... you go through wizard - only in vbox it seems (or maybe other
vm's - don't know - only tried vbox - this doesnt happen on real
systems). at the end e restarts... and it's blank. e is actually
rendering. you can screengrab (eg import -window root out.png) and see
the screen drawn just fine. xrandr is all set up right - everything is
kosher... but nothing will display except the curosr. xorg is just not
displaying rendered content. somehow e's gesture code and use of
logind/libinput to get inpiut devices for gestures tickles this xorg
bug. i don't quite know why as xorg doesnt seem to be complaining.
once you restart the xorg process everything works fine from there on.
it's some bug inside xorg that just refuses to display output.
manually changing resolution with xrandr will reset things and have
things render... until e restarts. a fukll xorg re-run is needed to
fix it... there just is nothing i can see that e is doing wrong or to
fix in e... so this is a workaround the xorg side by just not using
the gesture support if on a vm. they won't have touchpads anyway and
emulate mice so ... no real loss. this won't affect peolpe on real
systems and it may not always work as a workaround as it relies on
systemd-detect-virt or hostnamectl.

@fix
2022-01-03 00:47:24 +00:00
Carsten Haitzler 7bd186b84b windows - netxcloud app - fix constant show/hide cycles
e is not ignoring the first unmap event on this reparent ... this
fixes that and the nextcloud app stops making e sit and spin at full
cpu and flickering tasks etc.

@fix
2022-01-03 00:47:17 +00:00
Carsten Haitzler 6364cd3b59 release - 0.25 2021-12-26 11:45:13 +00:00
42 changed files with 665 additions and 506 deletions

View File

@ -1,5 +1,5 @@
group "E_Config" struct {
value "config_version" int: 1000033;
value "config_version" int: 1000035;
value "config_type" uint: 0; // this profile seems to just be super minimalist
value "desktop_default_name" string: "%i-%i";
value "desktop_default_window_profile" string: "";
@ -164,6 +164,7 @@ group "E_Config" struct {
value "theme_default_border_style" string: "default";
value "desk_auto_switch" int: 0;
value "thumb_nice" int: 0;
value "gesture_open_input_devices" int: 0;
value "screen_limits" int: 0;
value "menu_favorites_show" int: 1;
value "menu_apps_show" int: 1;
@ -207,6 +208,7 @@ group "E_Config" struct {
value "backlight.timer" double: 30.0;
value "backlight.battery_timer" double: 20.0;
value "backlight.idle_dim" uchar: 1;
value "backlight.ddc" uchar: 0;
value "device_desktop" int: 0;
value "device_auto_mount" int: 0;
value "device_auto_open" int: 0;

View File

@ -1,5 +1,5 @@
group "E_Config" struct {
value "config_version" int: 1000033;
value "config_version" int: 1000035;
value "config_type" uint: 3;
value "desktop_default_name" string: "%i-%i";
value "desktop_default_window_profile" string: "standard";
@ -164,6 +164,7 @@ group "E_Config" struct {
value "theme_default_border_style" string: "default";
value "desk_auto_switch" int: 0;
value "thumb_nice" int: 0;
value "gesture_open_input_devices" int: 0;
value "screen_limits" int: 0;
value "menu_favorites_show" int: 1;
value "menu_apps_show" int: 1;
@ -200,6 +201,7 @@ group "E_Config" struct {
value "backlight.timer" double: 30.0;
value "backlight.battery_timer" double: 20.0;
value "backlight.idle_dim" uchar: 1;
value "backlight.ddc" uchar: 1;
value "deskenv.load_xrdb" uchar: 1;
value "deskenv.load_xmodmap" uchar: 1;
value "deskenv.load_gnome" uchar: 0;

View File

@ -1,5 +1,5 @@
group "E_Config" struct {
value "config_version" int: 1000033;
value "config_version" int: 1000035;
value "config_type" uint: 3;
value "desktop_default_name" string: "%i-%i";
value "desktop_default_window_profile" string: "standard";
@ -164,6 +164,7 @@ group "E_Config" struct {
value "theme_default_border_style" string: "default";
value "desk_auto_switch" int: 0;
value "thumb_nice" int: 0;
value "gesture_open_input_devices" int: 0;
value "screen_limits" int: 0;
value "menu_favorites_show" int: 1;
value "menu_apps_show" int: 1;
@ -200,6 +201,7 @@ group "E_Config" struct {
value "backlight.timer" double: 30.0;
value "backlight.battery_timer" double: 20.0;
value "backlight.idle_dim" uchar: 1;
value "backlight.ddc" uchar: 1;
value "deskenv.load_xrdb" uchar: 1;
value "deskenv.load_xmodmap" uchar: 1;
value "deskenv.load_gnome" uchar: 0;

View File

@ -1,19 +1,21 @@
[Desktop Entry]
Type=Link
Name=Tiling (Standard Enlightenment)
Name[ca]=Mosaic (Standard Enlightenment)
Name[de]=Kacheln (Vorgabe Enlightenment)
Name[fi]=Limittävä (Tavallinen Enlightenment)
Name[fr]=Pavage (Enlightenment standard)
Name[it]=Tiling (a piastrelle)
Name[ms]=Penjubinan (Enlightenment Piawai)
Name[ru]=Мозаичный режим (Стандартный Enlightenment)
Name[tr]=Döşeme (Standard Enlightenment)
Comment=Tiling window management configuration for devices with keyboards and mice<br>like your average PC Desktop, Laptop or Netbook<br>with Enlightenment's traditional keyboard bindings<br>and mouse controls.<br>Default tiling bindings are: Win-key + Space, arrows, and left mouse button.<br>See the module settings for more information.
Comment[ca]=Mosaic per la configuració de la gestió de finestres per dispositius amb teclats i ratolins <br>com ara PC d'escriptori, portàtil o netbook<br>amb associacions de tecles típiques d'Enlightenment<br>Tecles d'accés ràpid per defecte són: Tecla Win + Espai, fletxes i botó esquerre del ratolí <br>Veure la configuració del mòdul per obtenir més informació.
Comment[fr]=Gestion de la juxtaposition des fenêtres pour les machines avec clavier<br>et souris comme les PC de bureau et les portables,<br>offrant raccourcis et contrôles traditionnels.<br>Les raccourcis de pavage par défaut sont :<br>Win+Barre d'espace ou flèches, et bouton gauche de la souris.<br>Voir la configuration du module pour plus d'informations.
Comment[it]=Configurazione con finestre in griglia per dispositivi con tastiere e mouse<br>come i normali PC Desktop, Laptop o Netbook<br>con le tradizionali scorciatoie di tastiera e controlli<br>del mouse di Enlightenment.<br>Le associazioni di tasti predefinite proprie di questa modalità sono:<br>Tasto-windows + spazio, frecce, e tasto sinistro del mouse.<br>Vedere le impostazioni del modulo Tiling per maggiori informazioni.
Comment[ms]=Konfigurasi pengurusan tetingkap berjubin untuk peranti dengan papan kekunci dan tetikus<br>seperti Komputer Desktop, Komputer Riba atau Netbook anda<br>dengan pengikatan papan kekunci tradisional Enlightenment<br>dan kawalan tetikus.<br>Pengikatan penjubinan lalai adalah: Win-key + Space, anak panah, dan butang tetikus kiri.<br>Sila rujuk tetapan modul untuk maklumat lanjut.
Comment[ru]=Конфигурация с мозаичным режимом управления окнами<br>пригодная для устройств с клавиатурой и мышью,<br>таких как обычный компьютер или ноутбук,<br>с традиционными для Enlightenment'а сочетаниями<br>клавиш и управлением мышью.<br>Комбинации клавиш для мозаичного режима по умолчанию:<br>Кнопка Win + пробел, стрелки и левая кнопка мыши.
Comment[tr]=Enlightenment'in klavye ve fare kontrol bağlayıcıları ile kullanılan, ortalama <br>PC masaüstü, dizüstü ve netbook gibi klavye ve fare aygıtları bulunan cihazlar <br>için pencere döşeme yönetimi yapılandırması. Öntanımlı döşeme bağlayıcıları:<br>Win Tuşu + Boşluk, ok tuşları ve sol fare tuşu.<br>Daha fazla bilgi için modül ayarlarına bakınız.
Icon=enlightenment-tiling
[Desktop Entry]
Type=Link
Name=Tiling (Standard Enlightenment)
Name[ca]=Mosaic (Standard Enlightenment)
Name[de]=Kacheln (Vorgabe Enlightenment)
Name[fi]=Limittävä (Tavallinen Enlightenment)
Name[fr]=Pavage (Enlightenment standard)
Name[it]=Griglia (Enlightenment standard)
Name[ms]=Penjubinan (Enlightenment Piawai)
Name[pt]=Mosaico (Enlightenment padrão)
Name[ru]=Мозаичный режим (Стандартный Enlightenment)
Name[tr]=Döşeme (Standard Enlightenment)
Comment=Tiling window management configuration for devices with keyboards and mice<br>like your average PC Desktop, Laptop or Netbook<br>with Enlightenment's traditional keyboard bindings<br>and mouse controls.<br>Default tiling bindings are: Win-key + Space, arrows, and left mouse button.<br>See the module settings for more information.
Comment[ca]=Mosaic per la configuració de la gestió de finestres per dispositius amb teclats i ratolins <br>com ara PC d'escriptori, portàtil o netbook<br>amb associacions de tecles típiques d'Enlightenment<br>Tecles d'accés ràpid per defecte són: Tecla Win + Espai, fletxes i botó esquerre del ratolí <br>Veure la configuració del mòdul per obtenir més informació.
Comment[fr]=Gestion de la juxtaposition des fenêtres pour les machines avec clavier<br>et souris comme les PC de bureau et les portables,<br>offrant raccourcis et contrôles traditionnels.<br>Les raccourcis de pavage par défaut sont :<br>Win+Barre d'espace ou flèches, et bouton gauche de la souris.<br>Voir la configuration du module pour plus d'informations.
Comment[it]=Configurazione con finestre in griglia per dispositivi con tastiere e mouse<br>come i normali PC Desktop, Laptop o Netbook<br>con le tradizionali scorciatoie di tastiera e controlli<br>del mouse di Enlightenment.<br>Le associazioni di tasti predefinite proprie di questa modalità sono:<br>Tasto-windows + spazio, frecce, e tasto sinistro del mouse.<br>Vedere le impostazioni del modulo Tiling per maggiori informazioni.
Comment[pt]=Configuração de gestão de janelas em mosaico para dispositivos com teclados e ratos<br>como os computadores de secretária ou portáteis com as tradicionais<br>combinações de teclas e controlos de rato do Enlightenment.<br>As combinações padrão em mosaico são:<br>Tecla Win-key + Espaço, setas, e botão esquerdo do rato.<br>Veja as definições do módulo para mais informações.
Comment[ms]=Konfigurasi pengurusan tetingkap berjubin untuk peranti dengan papan kekunci dan tetikus<br>seperti Komputer Desktop, Komputer Riba atau Netbook anda<br>dengan pengikatan papan kekunci tradisional Enlightenment<br>dan kawalan tetikus.<br>Pengikatan penjubinan lalai adalah: Win-key + Space, anak panah, dan butang tetikus kiri.<br>Sila rujuk tetapan modul untuk maklumat lanjut.
Comment[ru]=Конфигурация с мозаичным режимом управления окнами<br>пригодная для устройств с клавиатурой и мышью,<br>таких как обычный компьютер или ноутбук,<br>с традиционными для Enlightenment'а сочетаниями<br>клавиш и управлением мышью.<br>Комбинации клавиш для мозаичного режима по умолчанию:<br>Кнопка Win + пробел, стрелки и левая кнопка мыши.
Comment[tr]=Enlightenment'in klavye ve fare kontrol bağlayıcıları ile kullanılan, ortalama <br>PC masaüstü, dizüstü ve netbook gibi klavye ve fare aygıtları bulunan cihazlar <br>için pencere döşeme yönetimi yapılandırması. Öntanımlı döşeme bağlayıcıları:<br>Win Tuşu + Boşluk, ok tuşları ve sol fare tuşu.<br>Daha fazla bilgi için modül ayarlarına bakınız.
Icon=enlightenment-tiling

View File

@ -1,6 +1,6 @@
##### project
project('enlightenment', 'c',
version : '0.24.99',
version : '0.25.3',
license : 'BSD 2 clause',
default_options: [ 'buildtype=release', 'c_std=gnu99', 'warning_level=2' ],
meson_version : '>= 0.47.0')
@ -30,7 +30,7 @@ else
config_h.set('E_RELEASE_BUILD' , '1')
endif
efl_version = '>= 1.25.99'
efl_version = '>= 1.26.0'
add_global_arguments('-DHAVE_CONFIG_H=1', language: 'c')
dir_prefix = get_option('prefix')
@ -105,7 +105,7 @@ suid_ldflags = []
dep_crypt = []
if freebsd == true or host_machine.system().startswith('pcbsd')
dep_crypt = cc.find_library('crypt', required: true)
if cc.links('', args: '-fPIE', link_args: '-pie') == true
if cc.links('', args: ['-fPIE', '-pie']) == true
suid_cflags = '-fPIE'
suid_ldflags = '-pie'
endif

288
po/fr.po
View File

@ -12,14 +12,14 @@
# rustyBSD <rustyBSD@gmx.fr>, 2012.
# Raoul Hecky <raoul.hecky@gmail.com>, 2012.
# Eliovir <eliovir@gmail.com>, 2013.
# similar <similar@orange.fr>, 2019, 2020, 2021.
# similar <similar@orange.fr>, 2019, 2020, 2021, 2022.
#
msgid ""
msgstr ""
"Project-Id-Version: enlightenment\n"
"Report-Msgid-Bugs-To: enlightenment-devel@lists.sourceforge.net\n"
"POT-Creation-Date: 2021-11-26 14:22+0100\n"
"PO-Revision-Date: 2021-12-08 11:51+0100\n"
"POT-Creation-Date: 2022-01-20 19:40+0100\n"
"PO-Revision-Date: 2022-01-20 19:56+0100\n"
"Last-Translator: Philippe Jean Guillaumie <similar@orange.fr>\n"
"Language-Team: French\n"
"Language: fr\n"
@ -39,7 +39,7 @@ msgstr "À propos dEnlightenment"
#: src/bin/e_int_client_menu.c:244 src/bin/e_int_client_prop.c:81
#: src/bin/e_startup.c:110 src/bin/e_theme_about.c:22
#: src/modules/conf_bindings/e_int_config_edgebindings.c:872
#: src/modules/conf_bindings/e_int_config_swipebindings.c:908
#: src/modules/conf_bindings/e_int_config_swipebindings.c:919
#: src/modules/conf/e_conf.c:159 src/modules/everything/evry_plug_windows.c:370
#: src/modules/fileman/e_fwin.c:2657 src/modules/vkbd/e_kbd_cfg.c:188
msgid "Close"
@ -55,12 +55,12 @@ msgstr "Enlightenment"
#: src/bin/e_about.c:26
msgid ""
"<title>Copyright &copy; 2000-2021, by the Enlightenment Development Team</"
"<title>Copyright &copy; 2000-2022, by the Enlightenment Development Team</"
"><ps/><ps/>We hope you enjoy using this software as much as we enjoyed "
"writing it.<ps/><ps/>To contact us please visit:<ps/><hilight>http://www."
"enlightenment.org</><ps/><ps/>"
msgstr ""
"<title>Copyright &copy; 2000-2021, par l'équipe de développement "
"<title>Copyright &copy; 2000-2022, par l'équipe de développement "
"d'Enlightenment</><ps/><ps/>Nous espérons que vous aurez autant de plaisir à "
"utiliser ce logiciel que nous en avons eu à l'écrire.<ps/><ps/>Pour nous "
"contacter, visitez :<ps/><hilight>http://www.enlightenment.org</><ps/><ps/>"
@ -107,8 +107,8 @@ msgstr "Tuer"
#: src/bin/e_actions.c:369 src/bin/e_actions.c:2272 src/bin/e_actions.c:2347
#: src/bin/e_actions.c:2407 src/bin/e_actions.c:2464 src/bin/e_actions.c:2526
#: src/bin/e_actions.c:2628 src/bin/e_confirm_dialog.c:53 src/bin/e_fm.c:10706
#: src/bin/e_fm.c:11059 src/modules/bluez5/e_mod_popup.c:548
#: src/modules/bluez5/e_mod_popup.c:549
#: src/bin/e_fm.c:11059 src/modules/bluez5/e_mod_popup.c:521
#: src/modules/bluez5/e_mod_popup.c:522
#: src/modules/quickaccess/e_mod_quickaccess.c:1308
msgid "No"
msgstr "Non"
@ -128,7 +128,7 @@ msgstr "Voulez-vous vraiment quitter Enlightenment ?"
#: src/bin/e_actions.c:2270 src/bin/e_actions.c:2345 src/bin/e_actions.c:2405
#: src/bin/e_actions.c:2462 src/bin/e_actions.c:2524 src/bin/e_actions.c:2626
#: src/bin/e_confirm_dialog.c:52 src/bin/e_fm.c:10709
#: src/modules/bluez5/e_mod_popup.c:548 src/modules/bluez5/e_mod_popup.c:549
#: src/modules/bluez5/e_mod_popup.c:521 src/modules/bluez5/e_mod_popup.c:522
#: src/modules/quickaccess/e_mod_quickaccess.c:1308
msgid "Yes"
msgstr "Oui"
@ -910,11 +910,11 @@ msgstr "Agencement de clavier précédent"
msgid "Set As Background"
msgstr "Utiliser comme fond d'écran"
#: src/bin/e_client.c:4915
#: src/bin/e_client.c:4923
msgid "Client Error!"
msgstr "Erreur du client !"
#: src/bin/e_client.c:4915
#: src/bin/e_client.c:4923
msgid "Something has attempted to set a border when it shouldn't! Report this!"
msgstr ""
"La tentative de définir une bordure est non conforme. Signalez ce bogue !"
@ -935,9 +935,9 @@ msgstr "Choisir"
#: src/bin/e_desktop_editor.c:973 src/bin/e_entry_dialog.c:128
#: src/bin/e_fm.c:10213 src/bin/e_fm_prop.c:770
#: src/bin/e_import_config_dialog.c:361 src/bin/e_import_dialog.c:197
#: src/modules/bluez5/e_mod_popup.c:660
#: src/modules/bluez5/e_mod_popup.c:616
#: src/modules/conf_bindings/e_int_config_signalbindings.c:624
#: src/modules/conf_bindings/e_int_config_swipebindings.c:667
#: src/modules/conf_bindings/e_int_config_swipebindings.c:678
#: src/modules/conf_intl/e_int_config_imc_import.c:123
#: src/modules/conf_theme/e_int_config_theme_import.c:122
#: src/modules/connman/agent.c:254
@ -971,7 +971,7 @@ msgstr "Définir l'opacité de la fenêtre actuelle"
msgid "Toggle focused client's redirect state"
msgstr "(Dés)Activer l'état de redirection du client focalisé"
#: src/bin/e_comp.c:1416 src/modules/bluez5/e_mod_popup.c:486
#: src/bin/e_comp.c:1416 src/modules/bluez5/e_mod_popup.c:459
msgid "Visible"
msgstr "Visible"
@ -1022,11 +1022,11 @@ msgstr ""
"OpenGL 2.0 (ou OpenGL ES 2.0)<ps/>pour tirer profit de la composition avec "
"OpenGL."
#: src/bin/e_comp_x.c:5854
#: src/bin/e_comp_x.c:5855
msgid "Lock Failed"
msgstr "Échec du verrouillage"
#: src/bin/e_comp_x.c:5855
#: src/bin/e_comp_x.c:5856
msgid ""
"Locking the desktop failed because some application<ps/>has grabbed either "
"the keyboard or the mouse or both<ps/>and their grab is unable to be broken."
@ -1035,12 +1035,12 @@ msgstr ""
"soit le clavier ou la souris, soit les deux,<ps/>et cette réservation n'a pu "
"être annulée."
#: src/bin/e_comp_x.c:5873
#: src/bin/e_comp_x.c:5874
msgid "Another compositor is already running on your display server."
msgstr ""
"Un autre compositeur est déjà fonctionnel sur votre serveur d'affichage."
#: src/bin/e_comp_x.c:5898
#: src/bin/e_comp_x.c:5899
msgid ""
"Your display server does not support the compositor overlay window.\n"
"This is needed for Enlightenment to function."
@ -1048,12 +1048,12 @@ msgstr ""
"Votre serveur d'affichage ne sait pas gérer le Composite Overlay Window.\n"
"Cette fonction est essentielle au bon fonctionnement de E."
#: src/bin/e_comp_x.c:6032
#: src/bin/e_comp_x.c:6033
#, c-format
msgid "Enlightenment cannot initialize X Connection...\n"
msgstr "Enlightenment ne parvient pas à initialiser une connexion à X...\n"
#: src/bin/e_comp_x.c:6047
#: src/bin/e_comp_x.c:6048
msgid ""
"Your display server does not support XComposite, or Ecore-X was built "
"without XComposite support. Note that for composite support you will also "
@ -1063,7 +1063,7 @@ msgstr ""
"sans le support de XComposite. Notez que vous avez également besoin de "
"XRender et XFixes dans X11 et Ecore pour la prise en charge du composite."
#: src/bin/e_comp_x.c:6056
#: src/bin/e_comp_x.c:6057
msgid ""
"Your display server does not support XDamage or Ecore was built without "
"XDamage support."
@ -1071,7 +1071,7 @@ msgstr ""
"Votre serveur d'affichage ne supporte pas XDamage ou Ecore est compilé sans "
"le support de XDamage."
#: src/bin/e_comp_x.c:6162
#: src/bin/e_comp_x.c:6163
msgid "Enlightenment cannot initialize the XSettings system.\n"
msgstr "Enlightenment ne parvient pas à initialiser le système XSettings.\n"
@ -1098,7 +1098,7 @@ msgstr ""
#: src/bin/e_module.c:480 src/bin/e_module.c:707 src/bin/e_sys.c:982
#: src/bin/e_update.c:70 src/bin/e_utils.c:401
#: src/modules/conf_bindings/e_int_config_signalbindings.c:623
#: src/modules/conf_bindings/e_int_config_swipebindings.c:666
#: src/modules/conf_bindings/e_int_config_swipebindings.c:677
#: src/modules/conf_intl/e_int_config_imc_import.c:119
#: src/modules/conf_theme/e_int_config_theme_import.c:118
#: src/modules/cpufreq/e_mod_main.c:551 src/modules/cpufreq/e_mod_main.c:619
@ -1192,7 +1192,7 @@ msgstr "Échec du déchiffrement."
msgid "The error is unknown to Enlightenment."
msgstr "Enlightenment ne reconnaît pas cette erreur."
#: src/bin/e_config.c:1247
#: src/bin/e_config.c:1250
msgid ""
"Settings data needed upgrading. Your old settings have<ps/>been wiped and a "
"new set of defaults initialized. This<ps/>will happen regularly during "
@ -1210,7 +1210,7 @@ msgstr ""
"configuration ne fournit pas.<ps/>Vous pouvez maintenant tout reconfigurer "
"selon votre goût.<ps/>Désolé pour la gêne occasionnée.<ps/>"
#: src/bin/e_config.c:1264
#: src/bin/e_config.c:1267
msgid ""
"Your settings are NEWER than Enlightenment. This is very<ps/>strange. This "
"should not happen unless you downgraded<ps/>Enlightenment or copied the "
@ -1226,7 +1226,7 @@ msgstr ""
"de<ps/>votre configuration ont été restaurées.<ps/>Désolé pour le "
"désagrément.<ps/>"
#: src/bin/e_config.c:1380
#: src/bin/e_config.c:1383
msgid ""
"Your bindings settings version does not match the current settings version."
"<ps/>As a result, all bindings have been reloaded from defaults.<ps/>Sorry "
@ -1236,7 +1236,7 @@ msgstr ""
"attendue.<ps/>En conséquence, tous vos paramètres de raccourcis ont été "
"ramenés aux valeurs par défaut.<ps/>Désolé pour le désagrément.<ps/>"
#: src/bin/e_config.c:2706
#: src/bin/e_config.c:2718
msgid "Settings Upgraded"
msgstr "Configuration mise à niveau"
@ -1684,7 +1684,7 @@ msgstr "Copier"
#: src/modules/conf_bindings/e_int_config_keybindings.c:240
#: src/modules/conf_bindings/e_int_config_mousebindings.c:290
#: src/modules/conf_bindings/e_int_config_signalbindings.c:789
#: src/modules/conf_bindings/e_int_config_swipebindings.c:934
#: src/modules/conf_bindings/e_int_config_swipebindings.c:945
#: src/modules/conf_dialogs/e_int_config_profiles.c:136
#: src/modules/conf_dialogs/e_int_config_profiles.c:341
#: src/modules/conf_paths/e_int_config_env.c:343
@ -3183,7 +3183,7 @@ msgstr "Utilitaire"
#: src/bin/e_widget_filepreview.c:696 src/bin/e_widget_filepreview.c:697
#: src/bin/e_widget_filepreview.c:698 src/bin/e_widget_filepreview.c:728
#: src/bin/e_widget_filepreview.c:739 src/modules/battery/e_mod_main.c:265
#: src/modules/bluez5/e_mod_popup.c:537 src/modules/bluez5/e_mod_popup.c:538
#: src/modules/bluez5/e_mod_popup.c:510 src/modules/bluez5/e_mod_popup.c:511
#: src/modules/bluez5/e_mod_util.c:261
#: src/modules/conf_bindings/e_int_config_acpibindings.c:429
#: src/modules/conf_bindings/e_int_config_edgebindings.c:1235
@ -3289,7 +3289,7 @@ msgstr "Descendre"
#: src/modules/conf_bindings/e_int_config_keybindings.c:237
#: src/modules/conf_bindings/e_int_config_mousebindings.c:288
#: src/modules/conf_bindings/e_int_config_signalbindings.c:786
#: src/modules/conf_bindings/e_int_config_swipebindings.c:927
#: src/modules/conf_bindings/e_int_config_swipebindings.c:938
#: src/modules/conf_dialogs/e_int_config_profiles.c:134
#: src/modules/conf_paths/e_int_config_env.c:337
#: src/modules/conf_shelves/e_int_config_shelf.c:137
@ -3853,7 +3853,7 @@ msgstr ""
"Enlightenment ne parvient pas à initialiser son système de périphériques "
"d'entrée.\n"
#: src/bin/e_main.c:954 src/bin/e_main.c:1093
#: src/bin/e_main.c:954 src/bin/e_main.c:1096
msgid "Enlightenment cannot set up its module system.\n"
msgstr "Enlightenment ne parvient pas à initialiser son système de modules.\n"
@ -3912,16 +3912,16 @@ msgstr ""
"Enlightenment ne parvient pas à initialiser son système de classement de "
"fichiers.\n"
#: src/bin/e_main.c:1101 src/modules/wizard/e_wizard.c:262
#: src/bin/e_main.c:1104 src/modules/wizard/e_wizard.c:262
msgid "Welcome to Enlightenment"
msgstr "Bienvenue dans Enlightenment"
#: src/bin/e_main.c:1249
#: src/bin/e_main.c:1252
#, c-format
msgid "Version: %s\n"
msgstr "Version : %s\n"
#: src/bin/e_main.c:1258
#: src/bin/e_main.c:1261
#, c-format
msgid ""
"Options:\n"
@ -3976,7 +3976,7 @@ msgstr ""
"pour vous)<ps/>\n"
"-version<ps/>\n"
#: src/bin/e_main.c:1312
#: src/bin/e_main.c:1315
msgid ""
"You are executing enlightenment directly. This is\n"
"bad. Please do not execute the \"enlightenment\"\n"
@ -3992,16 +3992,16 @@ msgstr ""
"des chemins, et de la gestion de tout autre service\n"
"nécessaire avant le lancement d'Enlightenment.\n"
#: src/bin/e_main.c:1575
#: src/bin/e_main.c:1578
msgid "Enlightenment cannot create a compositor.\n"
msgstr "Enlightenment est incapable de créer un compositeur.\n"
#: src/bin/e_main.c:1588
#: src/bin/e_main.c:1591
msgid "Enlightenment cannot set up its dnd system.\n"
msgstr ""
"Enlightenment ne parvient pas à initialiser son système de glisser-déposer.\n"
#: src/bin/e_main.c:1749
#: src/bin/e_main.c:1752
#, c-format
msgid ""
"Enlightenment crashed early on start and has<ps/>been restarted. There was "
@ -4012,11 +4012,11 @@ msgstr ""
"module %s qui est à l'origine de<ps/>l'erreur a été désactivé. Il ne sera "
"pas rechargé."
#: src/bin/e_main.c:1754 src/bin/e_main.c:1770
#: src/bin/e_main.c:1757 src/bin/e_main.c:1773
msgid "Enlightenment crashed early on start and has been restarted"
msgstr "Enlightenment a planté en phase d'initialisation et a été relancé"
#: src/bin/e_main.c:1755
#: src/bin/e_main.c:1758
#, c-format
msgid ""
"Enlightenment crashed early on start and has been restarted.<ps/>There was "
@ -4027,7 +4027,7 @@ msgstr ""
"module nommé %s est à l'origine de l'erreur.<ps/><ps/> Ce module a été "
"désactivé et ne sera pas rechargé."
#: src/bin/e_main.c:1763
#: src/bin/e_main.c:1766
msgid ""
"Enlightenment crashed early on start and has<ps/>been restarted. All modules "
"have been disabled<ps/>and will not be loaded to help remove any problem<ps/"
@ -4040,7 +4040,7 @@ msgstr ""
"dialogue de configuration des modules vous permettra<ps/>de recharger vos "
"modules.\n"
#: src/bin/e_main.c:1771
#: src/bin/e_main.c:1774
msgid ""
"Enlightenment crashed early on start and has been restarted.<ps/>All modules "
"have been disabled and will not be loaded to help<ps/>remove any problem "
@ -4741,7 +4741,7 @@ msgid "%3.1f%%"
msgstr "%3.1f%%"
#: src/bin/e_widget_filepreview.c:413
#: src/modules/conf_bindings/e_int_config_swipebindings.c:695
#: src/modules/conf_bindings/e_int_config_swipebindings.c:706
msgid "Length:"
msgstr "Taille :"
@ -5032,48 +5032,48 @@ msgstr ""
"rfkill pour le déblocage.<br>Vérifiez les utilisateurs et groupes pour ce "
"fichier."
#: src/modules/bluez5/e_mod_popup.c:421
#: src/modules/bluez5/e_mod_popup.c:394
msgid "Adapters"
msgstr "Adaptateurs"
#: src/modules/bluez5/e_mod_popup.c:422
#: src/modules/bluez5/e_mod_popup.c:395
msgid "Devices"
msgstr "Périphériques"
#: src/modules/bluez5/e_mod_popup.c:457
#: src/modules/bluez5/e_mod_popup.c:430
msgid "Unknown Address"
msgstr "Adresse inconnue"
#: src/modules/bluez5/e_mod_popup.c:480
#: src/modules/bluez5/e_mod_popup.c:453
msgid "Power"
msgstr "Alimentation"
#: src/modules/bluez5/e_mod_popup.c:480
#: src/modules/bluez5/e_mod_popup.c:453
msgid "Enable power for this adapter"
msgstr "Activer l'alimentation pour cet adaptateur"
#: src/modules/bluez5/e_mod_popup.c:486
#: src/modules/bluez5/e_mod_popup.c:459
msgid "Make this adapter visible to other devices"
msgstr "Rendre cet adaptateur visible aux autres appareils"
#: src/modules/bluez5/e_mod_popup.c:492
#: src/modules/bluez5/e_mod_popup.c:465
msgid "Scan"
msgstr "Recherche"
#: src/modules/bluez5/e_mod_popup.c:492
#: src/modules/bluez5/e_mod_popup.c:465
msgid "Scan for other devices"
msgstr "Rechercher d'autres appareils"
#: src/modules/bluez5/e_mod_popup.c:498
#: src/modules/bluez5/e_mod_popup.c:471
msgid "Pairable"
msgstr "Appairable"
#: src/modules/bluez5/e_mod_popup.c:498
#: src/modules/bluez5/e_mod_popup.c:471
msgid "Allow this adapter to have other devices request to pair with it"
msgstr ""
"Accepter les requêtes d'appairage d'autres appareils pour cet adaptateur"
#: src/modules/bluez5/e_mod_popup.c:531
#: src/modules/bluez5/e_mod_popup.c:504
#, c-format
msgid ""
"Address: %s (%s)<br>Services: %s%s%s%s%s%s%s%s%s<br>Trusted: %s<br>Blocked: "
@ -5082,88 +5082,80 @@ msgstr ""
"Adresse : %s (%s)<br>Services : %s%s%s%s%s%s%s%s%s<br>De confiance : "
"%s<br>Bloqué : %s<br>"
#: src/modules/bluez5/e_mod_popup.c:539
#: src/modules/bluez5/e_mod_popup.c:512
msgid "Limited-Discoverable "
msgstr "Découverte limitée "
#: src/modules/bluez5/e_mod_popup.c:540
#: src/modules/bluez5/e_mod_popup.c:513
msgid "Positioning "
msgstr "Localisation "
#: src/modules/bluez5/e_mod_popup.c:541
#: src/modules/bluez5/e_mod_popup.c:514
msgid "Networking "
msgstr "Réseau "
#: src/modules/bluez5/e_mod_popup.c:542
#: src/modules/bluez5/e_mod_popup.c:515
msgid "Rendering "
msgstr "Rendu "
#: src/modules/bluez5/e_mod_popup.c:543
#: src/modules/bluez5/e_mod_popup.c:516
msgid "Capture "
msgstr "Capture "
#: src/modules/bluez5/e_mod_popup.c:544
#: src/modules/bluez5/e_mod_popup.c:517
msgid "OBEX "
msgstr "OBEX "
#: src/modules/bluez5/e_mod_popup.c:545
#: src/modules/bluez5/e_mod_popup.c:518
msgid "Audio "
msgstr "Audio "
#: src/modules/bluez5/e_mod_popup.c:546
#: src/modules/bluez5/e_mod_popup.c:519
msgid "Telephony "
msgstr "Téléphonie "
#: src/modules/bluez5/e_mod_popup.c:547
#: src/modules/bluez5/e_mod_popup.c:520
msgid "Information "
msgstr "Information "
#: src/modules/bluez5/e_mod_popup.c:572
#: src/modules/bluez5/e_mod_popup.c:545
msgid "Stop this from being an unlock device"
msgstr "Oublier le déverrouillage du périphérique"
#: src/modules/bluez5/e_mod_popup.c:579
#: src/modules/bluez5/e_mod_popup.c:552
msgid "Make this auto unlock when detected (and lock when not)"
msgstr "Déverrouillage auto. à la détection (sinon verrouillage)"
#: src/modules/bluez5/e_mod_popup.c:589
msgid "Stop this device from being forcefully connected"
msgstr "Oublier la connexion forcée du périphérique"
#: src/modules/bluez5/e_mod_popup.c:596
msgid "Force this device to be connected when detected"
msgstr "Forcer la connexion du périphérique à la détection"
#: src/modules/bluez5/e_mod_popup.c:606
#: src/modules/bluez5/e_mod_popup.c:562
msgid "Disconnect this device"
msgstr "Déconnecter cet appareil"
#: src/modules/bluez5/e_mod_popup.c:613
#: src/modules/bluez5/e_mod_popup.c:569
msgid "Connect this device"
msgstr "Connecter cet appareil"
#: src/modules/bluez5/e_mod_popup.c:623
#: src/modules/bluez5/e_mod_popup.c:579
msgid "Disrust this device"
msgstr "Ne pas faire confiance à cet appareil"
#: src/modules/bluez5/e_mod_popup.c:630
#: src/modules/bluez5/e_mod_popup.c:586
msgid "Trust this device"
msgstr "Faire confiance à cet appareil"
#: src/modules/bluez5/e_mod_popup.c:642 src/modules/bluez5/e_mod_popup.c:703
#: src/modules/bluez5/e_mod_popup.c:725
#: src/modules/bluez5/e_mod_popup.c:598 src/modules/bluez5/e_mod_popup.c:659
#: src/modules/bluez5/e_mod_popup.c:681
msgid "Pair with this device"
msgstr "Associer cet appareil"
#: src/modules/bluez5/e_mod_popup.c:652
#: src/modules/bluez5/e_mod_popup.c:608
msgid "Unpair with this device"
msgstr "Dissocier cet appareil"
#: src/modules/bluez5/e_mod_popup.c:711 src/modules/bluez5/e_mod_popup.c:732
#: src/modules/bluez5/e_mod_popup.c:667 src/modules/bluez5/e_mod_popup.c:688
msgid "Reject pairing"
msgstr "Refuser l'association"
#: src/modules/bluez5/e_mod_popup.c:764
#: src/modules/bluez5/e_mod_popup.c:720
msgid "Options for device like connect, pair etc."
msgstr "Options de l'appareil telles que la connexion, l'association, etc."
@ -5384,7 +5376,7 @@ msgstr "Raccourcis ACPI"
#: src/modules/conf_bindings/e_int_config_keybindings.c:257
#: src/modules/conf_bindings/e_int_config_mousebindings.c:308
#: src/modules/conf_bindings/e_int_config_signalbindings.c:802
#: src/modules/conf_bindings/e_int_config_swipebindings.c:949
#: src/modules/conf_bindings/e_int_config_swipebindings.c:960
msgid "Action"
msgstr "Action"
@ -5393,7 +5385,7 @@ msgstr "Action"
#: src/modules/conf_bindings/e_int_config_keybindings.c:264
#: src/modules/conf_bindings/e_int_config_mousebindings.c:315
#: src/modules/conf_bindings/e_int_config_signalbindings.c:809
#: src/modules/conf_bindings/e_int_config_swipebindings.c:956
#: src/modules/conf_bindings/e_int_config_swipebindings.c:967
msgid "Action Params"
msgstr "Paramètres de l'action"
@ -5604,7 +5596,7 @@ msgstr "Modifier"
#: src/modules/conf_bindings/e_int_config_keybindings.c:248
#: src/modules/conf_bindings/e_int_config_mousebindings.c:298
#: src/modules/conf_bindings/e_int_config_signalbindings.c:793
#: src/modules/conf_bindings/e_int_config_swipebindings.c:938
#: src/modules/conf_bindings/e_int_config_swipebindings.c:949
msgid "Delete All"
msgstr "Tout supprimer"
@ -5612,7 +5604,7 @@ msgstr "Tout supprimer"
#: src/modules/conf_bindings/e_int_config_keybindings.c:252
#: src/modules/conf_bindings/e_int_config_mousebindings.c:302
#: src/modules/conf_bindings/e_int_config_signalbindings.c:797
#: src/modules/conf_bindings/e_int_config_swipebindings.c:942
#: src/modules/conf_bindings/e_int_config_swipebindings.c:953
msgid "Restore Default Bindings"
msgstr "Restaurer les raccourcis par défaut"
@ -5893,23 +5885,23 @@ msgstr "Raccourcis des signaux"
msgid "Signal Bindings Settings"
msgstr "Paramètres des raccourcis de signaux"
#: src/modules/conf_bindings/e_int_config_swipebindings.c:664
#: src/modules/conf_bindings/e_int_config_swipebindings.c:675
msgid "Add Swipe Binding"
msgstr "Ajouter un raccourci de balayage"
#: src/modules/conf_bindings/e_int_config_swipebindings.c:675
#: src/modules/conf_bindings/e_int_config_swipebindings.c:686
msgid "Direction:"
msgstr "Direction :"
#: src/modules/conf_bindings/e_int_config_swipebindings.c:685
#: src/modules/conf_bindings/e_int_config_swipebindings.c:696
msgid "Error:"
msgstr "Erreur :"
#: src/modules/conf_bindings/e_int_config_swipebindings.c:705
#: src/modules/conf_bindings/e_int_config_swipebindings.c:716
msgid "Fingers:"
msgstr "Doigts :"
#: src/modules/conf_bindings/e_int_config_swipebindings.c:753
#: src/modules/conf_bindings/e_int_config_swipebindings.c:764
#, c-format
msgid ""
"Using %d Fingers<br> <b>Direction</b> %f <b>Length</b> %f <b>Error</b> %f"
@ -5917,21 +5909,21 @@ msgstr ""
"Utilisation de %d doigts<br> <b>Direction</b> %f <b>Longueur</b> %f "
"<b>Erreur</b> %f"
#: src/modules/conf_bindings/e_int_config_swipebindings.c:769
#: src/modules/conf_bindings/e_int_config_swipebindings.c:780
msgid "Swipe recognition"
msgstr "Reconnaissance des mouvements de balayage"
#: src/modules/conf_bindings/e_int_config_swipebindings.c:770
#: src/modules/conf_bindings/e_int_config_swipebindings.c:781
msgid "Do your swipe gesture.<br><br>Press <hilight>Escape</hilight> to abort"
msgstr ""
"Faites votre mouvement de balayage. <br><br>Appuyez sur <hilight>Échap</"
"hilight> pour annuler."
#: src/modules/conf_bindings/e_int_config_swipebindings.c:906
#: src/modules/conf_bindings/e_int_config_swipebindings.c:917
msgid "Swipe Bindings Help"
msgstr "Aide"
#: src/modules/conf_bindings/e_int_config_swipebindings.c:907
#: src/modules/conf_bindings/e_int_config_swipebindings.c:918
msgid ""
"Enlightenment is using libinput to detect swipe gesture. In case there are "
"problems:<br> 1. Test gestures while executing \"libinput debug-events\" in "
@ -5941,28 +5933,32 @@ msgid ""
"user is part of the libinput group.<br>"
msgstr ""
"Enlightenment utilise libinput pour détecter les mouvements de balayage. En "
"cas de problème :<br> 1. Tester les mouvements avec « libinput debug-events "
"cas de problème :<br> 1. Testez les mouvements avec « libinput debug-events "
"» dans un terminal. La sortie de la console indique la précision de votre "
"matériel.<br>2. Guettez les erreurs dans la console, certains appareils "
"renvoient des résultats erronés avec libinput.<br>3. Si votre session "
"actuelle se déroule dans Xorg, assurez-vous que votre utilisateur fait "
"partie du groupe libinput.<br>"
#: src/modules/conf_bindings/e_int_config_swipebindings.c:921
#: src/modules/conf_bindings/e_int_config_swipebindings.c:932
#: src/modules/conf_bindings/e_mod_main.c:38
msgid "Swipe Bindings"
msgstr "Raccourcis de balayage"
#: src/modules/conf_bindings/e_int_config_swipebindings.c:930
#: src/modules/conf_bindings/e_int_config_swipebindings.c:941
msgid "Add by props"
msgstr "Ajout par props"
#: src/modules/conf_bindings/e_int_config_swipebindings.c:944
#: src/modules/conf_bindings/e_int_config_swipebindings.c:955
#: src/modules/tiling/e_mod_config.c:219
msgid "Help"
msgstr "Aide"
#: src/modules/conf_bindings/e_int_config_swipebindings.c:1031
#: src/modules/conf_bindings/e_int_config_swipebindings.c:977
msgid "Open input devices"
msgstr "Ouvrir les périphériques d'entrée "
#: src/modules/conf_bindings/e_int_config_swipebindings.c:1045
msgid "Swipe Bindings Settings"
msgstr "Paramètres des raccourcis de balayage"
@ -6227,50 +6223,54 @@ msgstr "Animation"
msgid "Flip"
msgstr "Basculement"
#: src/modules/conf_display/e_int_config_dpms.c:46
#: src/modules/conf_display/e_int_config_dpms.c:47
msgid "Backlight Settings"
msgstr "Paramètres du rétroéclairage"
#: src/modules/conf_display/e_int_config_dpms.c:143
#: src/modules/conf_display/e_int_config_dpms.c:147
msgid "Normal Backlight"
msgstr "Rétroéclairage normal"
#: src/modules/conf_display/e_int_config_dpms.c:145
#: src/modules/conf_display/e_int_config_dpms.c:151
#: src/modules/conf_display/e_int_config_dpms.c:149
#: src/modules/conf_display/e_int_config_dpms.c:155
#: src/modules/cpufreq/e_mod_config.c:106
#: src/modules/cpufreq/e_mod_config.c:112
#, c-format
msgid "%3.0f"
msgstr "%3.0f"
#: src/modules/conf_display/e_int_config_dpms.c:149
#: src/modules/conf_display/e_int_config_dpms.c:153
msgid "Dim Backlight"
msgstr "Rétroéclairage diminué"
#: src/modules/conf_display/e_int_config_dpms.c:155
#: src/modules/conf_display/e_int_config_dpms.c:159
msgid "Desktop Monitor Support (DDC)"
msgstr "Prise en charge DDC du moniteur"
#: src/modules/conf_display/e_int_config_dpms.c:162
msgid "Idle Fade Time"
msgstr "Délai d'inactivité avant diminution"
#: src/modules/conf_display/e_int_config_dpms.c:157
#: src/modules/conf_display/e_int_config_dpms.c:166
#: src/modules/conf_display/e_int_config_dpms.c:164
#: src/modules/conf_display/e_int_config_dpms.c:173
#, c-format
msgid "%1.0f second(s)"
msgstr "%1.0f seconde(s)"
#: src/modules/conf_display/e_int_config_dpms.c:162
#: src/modules/conf_display/e_int_config_dpms.c:169
msgid "Fade Time on Battery"
msgstr "Délai avant atténuation sur batterie"
#: src/modules/conf_display/e_int_config_dpms.c:172
#: src/modules/conf_display/e_int_config_dpms.c:179
msgid "Fade Time"
msgstr "Durée de la transition"
#: src/modules/conf_display/e_int_config_dpms.c:174
#: src/modules/conf_display/e_int_config_dpms.c:181
#, c-format
msgid "%1.1f second(s)"
msgstr "%1.1f seconde(s)"
#: src/modules/conf_display/e_int_config_dpms.c:180
#: src/modules/conf_display/e_int_config_dpms.c:187
msgid "Dimming"
msgstr "Atténuation"
@ -6928,7 +6928,7 @@ msgstr "Demander"
#: src/modules/conf_randr/e_int_config_randr2.c:803
#, c-format
msgid "Hotplug Policy (%s)"
msgstr "Gestion du branchement à chaud (%s)"
msgstr "Gestion du branchement à chaud [%s]"
#: src/modules/conf_randr/e_int_config_randr2.c:881
#: src/modules/mixer/emixer.c:1954
@ -6977,7 +6977,7 @@ msgstr "Restaurer la configuration au démarrage"
#: src/modules/conf_randr/e_int_config_randr2.c:1191
msgid "Monitor hotplug"
msgstr "Connexion moniteur à chaud"
msgstr "Branchement à chaud"
#: src/modules/conf_randr/e_int_config_randr2.c:1200
msgid "Lid Events"
@ -9164,7 +9164,7 @@ msgstr ""
msgid "Are you sure you want to delete this bar source?"
msgstr "Voulez-vous vraiment supprimer cette source ?"
#: src/modules/ibar/e_mod_main.c:370 src/modules/ibar/e_mod_main.c:2891
#: src/modules/ibar/e_mod_main.c:370 src/modules/ibar/e_mod_main.c:2902
msgid "IBar"
msgstr "IBar"
@ -9185,7 +9185,7 @@ msgstr "Retirer de la barre"
msgid "Icon %s"
msgstr "Icône %s"
#: src/modules/ibar/e_mod_main.c:2891
#: src/modules/ibar/e_mod_main.c:2902
msgid "Focus IBar"
msgstr "Focaliser l'IBar"
@ -10051,103 +10051,103 @@ msgstr "Delai"
msgid "%1.1f sec"
msgstr "%1.1f s"
#: src/modules/shot/e_mod_edit.c:1960
#: src/modules/shot/e_mod_edit.c:1962
msgid "Tools"
msgstr "Outils"
#: src/modules/shot/e_mod_edit.c:1972
#: src/modules/shot/e_mod_edit.c:1974
msgid "Select crop area"
msgstr "Choisir la zone à recadrer"
#: src/modules/shot/e_mod_edit.c:1973
#: src/modules/shot/e_mod_edit.c:1975
msgid "Modify objects"
msgstr "Modifier des objets"
#: src/modules/shot/e_mod_edit.c:1974
#: src/modules/shot/e_mod_edit.c:1976
msgid "Delete objects"
msgstr "Supprimer des objets"
#: src/modules/shot/e_mod_edit.c:1983
#: src/modules/shot/e_mod_edit.c:1985
msgid "Single arrow line"
msgstr "Ligne à flèche directionnelle"
#: src/modules/shot/e_mod_edit.c:1984
#: src/modules/shot/e_mod_edit.c:1986
msgid "Double arrow line"
msgstr "Ligne à flèche bidirectionnelle"
#: src/modules/shot/e_mod_edit.c:1985
#: src/modules/shot/e_mod_edit.c:1987
msgid "Plain line"
msgstr "Ligne simple"
#: src/modules/shot/e_mod_edit.c:1986
#: src/modules/shot/e_mod_edit.c:1988
msgid "Solid box"
msgstr "Rectangle plein"
#: src/modules/shot/e_mod_edit.c:1988
#: src/modules/shot/e_mod_edit.c:1990
msgid "Malloc"
msgstr "Malloc"
#: src/modules/shot/e_mod_edit.c:1989
#: src/modules/shot/e_mod_edit.c:1991
msgid "Malloc (evil)"
msgstr "Malloc (en pétard)"
#: src/modules/shot/e_mod_edit.c:1990
#: src/modules/shot/e_mod_edit.c:1992
msgid "Pointing finger"
msgstr "Doigt pointé"
#: src/modules/shot/e_mod_edit.c:1991
#: src/modules/shot/e_mod_edit.c:1993
msgid "Enlightenment logo"
msgstr "Logo Enlightenment"
#: src/modules/shot/e_mod_edit.c:1993
#: src/modules/shot/e_mod_edit.c:1995
msgid "Foot"
msgstr "Pied"
#: src/modules/shot/e_mod_edit.c:1994
#: src/modules/shot/e_mod_edit.c:1996
msgid "Silly walk"
msgstr "Démarche ridicule"
#: src/modules/shot/e_mod_edit.c:1995
#: src/modules/shot/e_mod_edit.c:1997
msgid "Box outline"
msgstr "Contour rectangulaire"
#: src/modules/shot/e_mod_edit.c:1996
#: src/modules/shot/e_mod_edit.c:1998
msgid "Circle outline"
msgstr "Contour circulaire"
#: src/modules/shot/e_mod_edit.c:1998
#: src/modules/shot/e_mod_edit.c:2000
msgid "Plain text"
msgstr "Texte simple"
#: src/modules/shot/e_mod_edit.c:1999
#: src/modules/shot/e_mod_edit.c:2001
msgid "Text box"
msgstr "Encadrement"
#: src/modules/shot/e_mod_edit.c:2000
#: src/modules/shot/e_mod_edit.c:2002
msgid "Text thought bubble"
msgstr "Bulle pensée"
#: src/modules/shot/e_mod_edit.c:2001
#: src/modules/shot/e_mod_edit.c:2003
msgid "Text thought bubble 2"
msgstr "Bulle pensée 2"
#: src/modules/shot/e_mod_edit.c:2003
#: src/modules/shot/e_mod_edit.c:2005
msgid "Speech bubble"
msgstr "Bulle parlée"
#: src/modules/shot/e_mod_edit.c:2004
#: src/modules/shot/e_mod_edit.c:2006
msgid "Speech bubble 2"
msgstr "Bulle parlée 2"
#: src/modules/shot/e_mod_edit.c:2005
#: src/modules/shot/e_mod_edit.c:2007
msgid "Kaboom splat"
msgstr "Splash"
#: src/modules/shot/e_mod_edit.c:2006
#: src/modules/shot/e_mod_edit.c:2008
msgid "Pow explode"
msgstr "Explosion"
#: src/modules/shot/e_mod_edit.c:2014
#: src/modules/shot/e_mod_edit.c:2016
msgid "Color"
msgstr "Couleur"
@ -10906,3 +10906,9 @@ msgstr "Impossible d'établir une connexion avec une socket X11."
#: src/modules/xwayland/e_mod_main.c:347
msgid "Cannot launch XWayland from X11 display."
msgstr "Impossible de lancer XWayland depuis l'affichage X11."
#~ msgid "Stop this device from being forcefully connected"
#~ msgstr "Oublier la connexion forcée du périphérique"
#~ msgid "Force this device to be connected when detected"
#~ msgstr "Forcer la connexion du périphérique à la détection"

392
po/it.po

File diff suppressed because it is too large Load Diff

View File

@ -23,7 +23,7 @@ e_about_new(void)
snprintf
(buf, sizeof(buf), "%s%s",
_(
"<title>Copyright &copy; 2000-2021, by the Enlightenment "
"<title>Copyright &copy; 2000-2022, by the Enlightenment "
"Development Team</><ps/>"
"<ps/>"
"We hope you enjoy using this software as much as we enjoyed "

View File

@ -254,7 +254,8 @@ _backlight_devices_device_set(Backlight_Device *bd, double val)
// fprintf(stderr, "BL: ddc bklight %1.3f @ %1.3f\n", bd->val, ecore_time_get());
if (bd->ddc_max) fval = bd->val * (double)bd->ddc_max;
else fval = bd->val * 100.0;
e_system_send("ddc-val-set", "%s %i %i", bd->dev + 4, 0x10, (int)(fval)); // backlight val in e_system_ddc.c
if (e_config->backlight.ddc)
e_system_send("ddc-val-set", "%s %i %i", bd->dev + 4, 0x10, (int)(fval)); // backlight val in e_system_ddc.c
ecore_event_add(E_EVENT_BACKLIGHT_CHANGE, NULL, NULL, NULL);
}
else

View File

@ -400,8 +400,8 @@ _e_client_mouse_action_end(E_Client *ec)
E_FREE_FUNC(ec->cur_mouse_action, e_object_unref);
}
static void
_e_client_revert_focus(E_Client *ec)
E_API void
e_client_revert_focus(E_Client *ec)
{
E_Client *pec;
E_Desk *desk;
@ -433,12 +433,17 @@ _e_client_revert_focus(E_Client *ec)
}
}
}
else if ((ec->parent) &&
(ec->parent->desk == desk) && (ec->parent->modal == ec))
else if ((ec->parent) && (ec->parent->desk == desk))
{
evas_object_focus_set(ec->parent->frame, 1);
E_Client *goal_ec = NULL;
if (ec->parent->modal != ec && ec->parent->modal) {
goal_ec = ec->parent->modal;
} else {
goal_ec = ec->parent;
}
evas_object_focus_set(goal_ec->frame, 1);
if (e_config->raise_on_revert_focus)
evas_object_raise(ec->parent->frame);
evas_object_raise(goal_ec->frame);
}
else if (e_config->focus_revert_on_hide_or_close)
{
@ -459,6 +464,14 @@ _e_client_revert_focus(E_Client *ec)
static void
_e_client_free(E_Client *ec)
{
if (focused == ec)
{
focused = NULL;
#ifndef HAVE_WAYLAND_ONLY
if (e_comp->comp_type != E_PIXMAP_TYPE_WL)
ecore_x_window_focus(e_comp->root);
#endif
}
if (ec->desk)
ec->desk->fullscreen_clients = eina_list_remove(ec->desk->fullscreen_clients, ec);
if (ec->restore_zone_id)
@ -644,7 +657,7 @@ _e_client_del(E_Client *ec)
evas_object_hide(ec->internal_elm_win);
if (ec->focused)
_e_client_revert_focus(ec);
e_client_revert_focus(ec);
if (ec->frame) evas_object_focus_set(ec->frame, 0);
E_FREE_FUNC(ec->ping_poller, ecore_poller_del);
@ -1560,7 +1573,7 @@ _e_client_cb_evas_hide(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UN
if (!ec->hidden)
{
if (ec->focused)
_e_client_revert_focus(ec);
e_client_revert_focus(ec);
}
ec->want_focus = ec->take_focus = 0;
@ -4642,7 +4655,7 @@ e_client_iconify(E_Client *ec)
{
if (!ec->new_client)
{
_e_client_revert_focus(ec);
e_client_revert_focus(ec);
evas_object_hide(ec->frame);
}
e_client_urgent_set(ec, ec->icccm.urgent);

View File

@ -815,6 +815,7 @@ E_API Eina_Bool e_client_focus_track_enabled(void);
E_API void e_client_focus_track_freeze(void);
E_API void e_client_focus_track_thaw(void);
E_API void e_client_refocus(void);
E_API void e_client_revert_focus(E_Client *ec);
E_API void e_client_focus_set_with_pointer(E_Client *ec);
E_API void e_client_activate(E_Client *ec, Eina_Bool just_do_it);
E_API E_Client *e_client_focused_get(void);

View File

@ -1877,8 +1877,9 @@ _e_comp_intercept_focus(void *data, Evas_Object *obj, Eina_Bool focus)
}
else
{
if (e_client_focused_get() == ec)
if (e_client_focused_get() == ec) {
e_client_focused_set(NULL);
}
}
evas_object_focus_set(obj, focus);
}
@ -2352,8 +2353,9 @@ _e_comp_smart_hide(Evas_Object *obj)
edje_object_play_set(cw->frame_object, 0);
}
/* ensure focus-out */
if (cw->ec->focused)
evas_object_focus_set(cw->ec->frame, 0);
if (cw->ec->focused) {
e_client_revert_focus(cw->ec);
}
e_comp_render_queue(); //force nocomp recheck
e_comp_shape_queue();
}

View File

@ -2854,6 +2854,8 @@ _e_comp_x_focus_out(void *data EINA_UNUSED, int type EINA_UNUSED, Ecore_X_Event_
return ECORE_CALLBACK_PASS_ON;
else if (ev->detail == ECORE_X_EVENT_DETAIL_NON_LINEAR_VIRTUAL)
return ECORE_CALLBACK_PASS_ON;
else if (ev->detail == ECORE_X_EVENT_DETAIL_POINTER)
return ECORE_CALLBACK_PASS_ON;
}
else if (ev->mode == ECORE_X_EVENT_MODE_GRAB)
{
@ -2872,10 +2874,12 @@ _e_comp_x_focus_out(void *data EINA_UNUSED, int type EINA_UNUSED, Ecore_X_Event_
{
/* for firefox/thunderbird (xul) menu walking */
/* NB: why did i disable this before? */
return ECORE_CALLBACK_PASS_ON;
/* why only filter these out for an ungrab? skip all ungrabs...
if (ev->detail == ECORE_X_EVENT_DETAIL_INFERIOR)
return ECORE_CALLBACK_PASS_ON;
else if (ev->detail == ECORE_X_EVENT_DETAIL_POINTER)
return ECORE_CALLBACK_PASS_ON;
return ECORE_CALLBACK_PASS_ON; */
}
else if (ev->mode == ECORE_X_EVENT_MODE_WHILE_GRABBED)
{
@ -2883,8 +2887,10 @@ _e_comp_x_focus_out(void *data EINA_UNUSED, int type EINA_UNUSED, Ecore_X_Event_
return ECORE_CALLBACK_PASS_ON;
else if (ev->detail == ECORE_X_EVENT_DETAIL_INFERIOR)
return ECORE_CALLBACK_PASS_ON;
else if (ev->detail == ECORE_X_EVENT_DETAIL_NON_LINEAR)
return ECORE_CALLBACK_PASS_ON;
}
evas_object_focus_set(ec->frame, 0);
e_client_revert_focus(ec);
return ECORE_CALLBACK_PASS_ON;
}
@ -3512,6 +3518,7 @@ _e_comp_x_hook_client_pre_frame_assign(void *d EINA_UNUSED, E_Client *ec)
}
if (!ec->internal)
ecore_x_window_save_set_add(win);
ec->ignore_first_unmap++;
ecore_x_window_reparent(win, pwin, 0, 0);
e_pixmap_alias(ep, E_PIXMAP_TYPE_X, pwin);

View File

@ -879,6 +879,8 @@ _e_config_edd_init(Eina_Bool old)
E_CONFIG_VAL(D, T, thumb_nice, INT);
E_CONFIG_VAL(D, T, gesture_open_input_devices, UCHAR);
E_CONFIG_VAL(D, T, menu_icons_hide, UCHAR);
E_CONFIG_VAL(D, T, menu_favorites_show, INT);
E_CONFIG_VAL(D, T, menu_apps_show, INT);
@ -942,6 +944,7 @@ _e_config_edd_init(Eina_Bool old)
E_CONFIG_VAL(D, T, backlight.battery_timer, DOUBLE);
E_CONFIG_VAL(D, T, backlight.sysdev, STR);
E_CONFIG_VAL(D, T, backlight.idle_dim, UCHAR);
E_CONFIG_VAL(D, T, backlight.ddc, UCHAR);
E_CONFIG_VAL(D, T, deskenv.load_xrdb, UCHAR);
E_CONFIG_VAL(D, T, deskenv.load_xmodmap, UCHAR);
@ -1808,6 +1811,12 @@ e_config_load(void)
e_config->scale.set_xapp_dpi = 1;
e_config_save_queue();
}
CONFIG_VERSION_CHECK(35)
{
CONFIG_VERSION_UPDATE_INFO(35);
e_config->backlight.ddc = 1;
e_config_save_queue();
}
}
elm_config_profile_set(_e_config_profile);
if (!e_config->remember_internal_fm_windows)
@ -1912,6 +1921,8 @@ e_config_load(void)
E_CONFIG_LIMIT(e_config->desk_auto_switch, 0, 1);
E_CONFIG_LIMIT(e_config->screen_limits, 0, 2);
E_CONFIG_LIMIT(e_config->thumb_nice, -20, 20);
E_CONFIG_LIMIT(e_config->gesture_open_input_devices, 0, 1);
E_CONFIG_LIMIT(e_config->dpms_enable, 0, 1);
E_CONFIG_LIMIT(e_config->dpms_standby_enable, 0, 1);
@ -1992,6 +2003,7 @@ e_config_load(void)
E_CONFIG_LIMIT(e_config->backlight.normal, 0.05, 1.0);
E_CONFIG_LIMIT(e_config->backlight.dim, 0.05, 1.0);
E_CONFIG_LIMIT(e_config->backlight.idle_dim, 0, 1);
E_CONFIG_LIMIT(e_config->backlight.ddc, 0, 1);
E_CONFIG_LIMIT(e_config->keyboard.repeat_delay, -1, 1000); // 1 second
E_CONFIG_LIMIT(e_config->keyboard.repeat_rate, -1, 1000); // 1 second

View File

@ -47,7 +47,7 @@ typedef enum
/* increment this whenever a new set of config values are added but the users
* config doesn't need to be wiped - simply new values need to be put in
*/
#define E_CONFIG_FILE_GENERATION 34
#define E_CONFIG_FILE_GENERATION 35
#define E_CONFIG_FILE_VERSION ((E_CONFIG_FILE_EPOCH * 1000000) + E_CONFIG_FILE_GENERATION)
#define E_CONFIG_BINDINGS_VERSION 0 // DO NOT INCREMENT UNLESS YOU WANT TO WIPE ALL BINDINGS!!!!!
@ -291,6 +291,8 @@ struct _E_Config
int thumb_nice;
unsigned char gesture_open_input_devices; // GUI
int ping_clients_interval; // GUI
int thumbscroll_enable; // GUI
@ -371,6 +373,7 @@ struct _E_Config
double battery_timer; // GUI
const char *sysdev; // GUI
unsigned char idle_dim; // GUI
unsigned char ddc; // GUI
} backlight;
struct

View File

@ -454,8 +454,9 @@ e_desk_last_focused_focus(E_Desk *desk)
evas_object_raise(ecs->frame);
return ecs;
}
if (e_client_focused_get())
if (e_client_focused_get()) {
evas_object_focus_set(e_client_focused_get()->frame, 0);
}
return NULL;
}

View File

@ -79,6 +79,7 @@ _e_deskmirror_visible_get(E_Smart_Data *sd, Mirror *m)
*/
if (m->sd->handlers && m->ec->iconic)
visible = evas_object_visible_get(m->ec->frame);
if (m->ec->iconic) visible = EINA_FALSE;
if (visible)
{
visible = (sd->desk == m->ec->desk) || (m->ec->sticky && (!m->ec->hidden));

View File

@ -104,6 +104,7 @@ _e_exec_recent_exists_filter(void)
{
_e_exec_recent->files =
eina_list_remove_list(_e_exec_recent->files, l);
eina_stringshare_del(fl->file);
free(fl);
}
}
@ -160,7 +161,7 @@ _e_exec_recent_load(void)
}
fl->file = eina_stringshare_add(buf);
fl->timestamp = (double)timi / 100.0;
_e_exec_recent->files = eina_list_prepend(_e_exec_recent->files, fl);
_e_exec_recent->files = eina_list_append(_e_exec_recent->files, fl);
}
fclose(f);
}

View File

@ -35,8 +35,9 @@ e_focus_event_mouse_out(E_Client *ec)
{
if (!ec->lock_focus_in)
{
if (ec->focused)
evas_object_focus_set(ec->frame, 0);
if (ec->focused) {
e_client_revert_focus(ec);
}
}
}
E_FREE_FUNC(ec->raise_timer, ecore_timer_del);

View File

@ -22,6 +22,7 @@ typedef struct {
static int gesture_capable_devices = 0;
static E_Bindings_Swipe_Live_Update live_update;
static void* live_update_data;
static Eina_List *handlers = NULL;
static Swipe_Stats*
_find_swipe_gesture_recognizition(Elput_Device *dev)
@ -208,10 +209,41 @@ _shutdown_for_x11(void)
elput_shutdown();
}
static int
_detect_vm(void)
{
static int on_vm = -1;
int ret;
if (on_vm >= 0) return on_vm;
ret = system("systemd-detect-virt");
if (ret == 0) on_vm = 1;
else if (ret == 1) on_vm = 0;
else
{
ret = system("hostnamectl status | grep 'Chassis: vm'");
if (ret == 0) on_vm = 1;
else if (ret == 1) on_vm = 0;
// fallback to assuming not on vm
else on_vm = 0;
}
return on_vm;
}
E_API int
e_gesture_init(void)
{
// we have some bizarre bug on vbox -> this causes xorg to stop displaying
// the screen output even though it's rendered and you can grab it through
// screenshots, xrandr reports a perfectly well configured display.
// somehow using elput to get input devices from logind causes xorg
// internally to not handle e's first restart after wizard - as if
// the xserver goes into some bixarre internal state - it doesn't report
// any errors though. this works around that by just avoiding the gesture
// support on vm's - they wont have touchpads anyway as they will emulate
// a normal mouse mostly... :)
if (_detect_vm()) return 1;
if (e_comp->comp_type == E_PIXMAP_TYPE_X)
{
_init_for_x11();
@ -219,10 +251,10 @@ e_gesture_init(void)
active_gestures = eina_hash_pointer_new(_stats_free);
ecore_event_handler_add(ELPUT_EVENT_SWIPE_BEGIN, _swipe_cb, NULL);
ecore_event_handler_add(ELPUT_EVENT_SWIPE_UPDATE, _swipe_cb, NULL);
ecore_event_handler_add(ELPUT_EVENT_SWIPE_END, _swipe_cb, NULL);
ecore_event_handler_add(ELPUT_EVENT_SEAT_CAPS, _debug, NULL);
E_LIST_HANDLER_APPEND(handlers, ELPUT_EVENT_SWIPE_BEGIN, _swipe_cb, NULL);
E_LIST_HANDLER_APPEND(handlers, ELPUT_EVENT_SWIPE_UPDATE, _swipe_cb, NULL);
E_LIST_HANDLER_APPEND(handlers, ELPUT_EVENT_SWIPE_END, _swipe_cb, NULL);
E_LIST_HANDLER_APPEND(handlers, ELPUT_EVENT_SEAT_CAPS, _debug, NULL);
return 1;
}
@ -230,6 +262,21 @@ e_gesture_init(void)
E_API int
e_gesture_shutdown(void)
{
Ecore_Event_Handler *hand;
if (_detect_vm()) return 1;
if (active_gestures)
{
eina_hash_free(active_gestures);
active_gestures = NULL;
}
EINA_LIST_FREE(handlers, hand)
{
ecore_event_handler_del(hand);
}
if (e_comp->comp_type == E_PIXMAP_TYPE_X)
{
_shutdown_for_x11();

View File

@ -174,6 +174,7 @@ e_icon_file_set(Evas_Object *obj, const char *file)
if ((sd->url) && (!strcmp(sd->url, file))) return;
/* smart code here */
sd->edje = EINA_FALSE;
_e_icon_obj_prepare(obj, sd);
/* FIXME: 64x64 - unhappy about this. use icon size */
sd->loading = 0;

View File

@ -1059,10 +1059,13 @@ main(int argc, char **argv)
e_comp_canvas_keys_grab();
TS("E_Comp_Canvas Keys Grab Done");
#ifdef HAVE_ELPUT
TS("E_Gesture Init");
e_gesture_init();
TS("E_Gesture Init Done");
_e_main_shutdown_push(e_gesture_shutdown);
if (e_config->gesture_open_input_devices)
{
TS("E_Gesture Init");
e_gesture_init();
TS("E_Gesture Init Done");
_e_main_shutdown_push(e_gesture_shutdown);
}
#endif
TS("Run Startup Apps");

View File

@ -786,6 +786,7 @@ _e_module_whitelist_check(void)
"policy_mobile",
"geolocation",
"xwayland",
"procstats",
NULL // end marker
};

View File

@ -134,7 +134,23 @@ e_theme_border_find(const char *border)
E_API Eina_List *
e_theme_border_list(void)
{
return e_theme_collection_items_find(NULL, "e/widgets/border");
Eina_List *list, *l;
const char *s;
list = e_theme_collection_items_find(NULL, "e/widgets/border");
// XXX: a horrible hack due to history and bad group naming choices
// but filter out volume as a border because it is the volume gadget
// thing not a border
EINA_LIST_FOREACH(list, l, s)
{
if (!strcmp(s, "volume"))
{
list = eina_list_remove_list(list, l);
eina_stringshare_del(s);
break;
}
}
return list;
}
E_API int

View File

@ -153,7 +153,7 @@ _cb_worker_message(void *data EINA_UNUSED, Ecore_Thread *th EINA_UNUSED, void *m
if (lig->max > 0)
{
val = ((1000 * lig->val) + 500) / lig->max;
val = (1000 * lig->val) / lig->max;
if (val < 0) val = 0;
else if (val > 1000) val = 1000;
}

View File

@ -3,13 +3,13 @@ Encoding=UTF-8
Type=Application
Name=Fingerprint Password Settings
Name[de]=Fingerprint Passwort Einstellungen
Name[fr]=Reconnaissance des empreintes digitales
Name[fr]=Reconnaissance par empreinte digitale
Name[it]=Impostazioni impronte digitali
Name[pt]=Definições de palavras-passe de impressão digital
Icon=enlightenment_fprint
Exec=enlightenment_fprint
Comment=Tool to set up or modify fingerprint authentication
Comment[fr]=Outil pour configurer ou modifier l'authentification par empreintes digitales.
Comment[fr]=Outil pour configurer ou modifier l'authentification par empreintes digitales
Comment[it]=Utilità per impostare o modificare l'autenticazione mediante sensore di impronte digitali
Comment[pt]=Ferramenta para configurar ou modificar a autenticação das impressões digitais
GenericName=GUI for Fingerprint Authentication

View File

@ -36,7 +36,10 @@ cb_obj_prop_entry(void *data, const void *key, Eldbus_Message_Iter *var)
{
Eina_Bool val = EINA_FALSE;
if (eldbus_message_iter_arguments_get(var, "b", &val))
o->connected = val;
{
o->connected = val;
printf("BZ: change connected for %s to %i\n", o->address, o->connected);
}
}
else if (!strcmp(skey, "Trusted"))
{

View File

@ -294,7 +294,7 @@ ebluez5_instances_update(void)
static void
_device_prop_clean(Config_Device *dev)
{
if ((!dev->unlock) && (!dev->force_connect))
if (!dev->unlock)
{
ebluez5_config->devices = eina_list_remove(ebluez5_config->devices, dev);
eina_stringshare_del(dev->addr);
@ -332,27 +332,6 @@ ebluez5_device_prop_find(const char *address)
return NULL;
}
void
ebluez5_device_prop_force_connect_set(const char *address, Eina_Bool enable)
{
Config_Device *dev;
if (!address) return;
dev = ebluez5_device_prop_find(address);
if (dev)
{
dev->force_connect = enable;
_device_prop_clean(dev);
return;
}
if (enable)
{
dev = _device_prop_new(address);
dev->force_connect = enable;
}
}
void
ebluez5_device_prop_unlock_set(const char *address, Eina_Bool enable)
{
@ -405,7 +384,6 @@ e_modapi_init(E_Module *m)
#define T Config_Device
#define D conf_device_edd
E_CONFIG_VAL(D, T, addr, STR);
E_CONFIG_VAL(D, T, force_connect, UCHAR);
E_CONFIG_VAL(D, T, unlock, UCHAR);
conf_edd = E_CONFIG_DD_NEW("Config", Config);
@ -438,6 +416,7 @@ e_modapi_shutdown(E_Module *m EINA_UNUSED)
Config_Adapter *ad;
Config_Device *dev;
e_gadcon_provider_unregister(&_gc_class);
if (zero_adapters_check_timer)
{
ecore_timer_del(zero_adapters_check_timer);

View File

@ -32,7 +32,6 @@ typedef struct _Config_Device Config_Device;
struct _Config_Device
{
const char *addr;
Eina_Bool force_connect;
Eina_Bool unlock;
};

View File

@ -43,21 +43,12 @@ _devices_eval(void)
if (o->paired)
{
Eina_Bool need_ping = EINA_FALSE;
Obj *adapter = bz_obj_find(o->adapter);
dev = _devices_conifg_find(o->address);
if (dev)
if ((dev) && (adapter) && (adapter->powered))
{
printf("=== dev: %s|%s [%s]\n", dev->addr, o->address, o->name);
if ((dev->force_connect) && (!o->connected))
{
printf("=== %s force con, not conn, ping ok=%i\n", o->address, o->ping_ok);
if (o->ping_ok)
{
printf("=== %s force con, not conn, ping ok=%i\n", o->address, o->ping_ok);
bz_obj_connect(o);
}
else need_ping = EINA_TRUE;
}
if (dev->unlock)
{
printf("=== unlock...\n");
@ -303,24 +294,6 @@ _cb_unlock_stop(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
_unflip(o, obj);
}
static void
_cb_force_connect_start(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
{
Obj *o = data;
ebluez5_device_prop_force_connect_set(o->address, EINA_TRUE);
ebluez5_popup_adapter_change(o);
_unflip(o, obj);
}
static void
_cb_force_connect_stop(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
{
Obj *o = data;
ebluez5_device_prop_force_connect_set(o->address, EINA_FALSE);
ebluez5_popup_adapter_change(o);
_unflip(o, obj);
}
static void
_cb_flip(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
{
@ -582,23 +555,6 @@ _cb_dev_content_get(void *data, Evas_Object *obj,
}
elm_box_pack_end(bx, bt);
evas_object_show(bt);
if ((dev) && (dev->force_connect))
{
bt = util_button_icon_add(obj, "bt-force-connect-off",
_("Stop this device from being forcefully connected"));
evas_object_data_set(bt, "genlist", obj);
evas_object_smart_callback_add(bt, "clicked", _cb_force_connect_stop, o);
}
else
{
bt = util_button_icon_add(obj, "bt-force-connect-on",
_("Force this device to be connected when detected"));
evas_object_data_set(bt, "genlist", obj);
evas_object_smart_callback_add(bt, "clicked", _cb_force_connect_start, o);
}
elm_box_pack_end(bx, bt);
evas_object_show(bt);
}
if (o->connected)
{

View File

@ -24,6 +24,7 @@ struct _E_Config_Dialog_Data
double error;
double length;
unsigned int fingers;
int gesture_open_input_devices;
} locals;
struct
{
@ -75,6 +76,15 @@ _auto_apply_changes(E_Config_Dialog_Data *cfdata)
E_Action_Group *actg;
E_Action_Description *actd;
if (cfdata->locals.gesture_open_input_devices != e_config->gesture_open_input_devices)
{
E_Action *act;
e_config->gesture_open_input_devices = cfdata->locals.gesture_open_input_devices;
act = e_action_find("restart");
if ((act) && (act->func.go)) act->func.go(NULL, NULL);
}
if ((!cfdata->locals.cur) || (!cfdata->locals.cur[0]) ||
(!cfdata->locals.action) || (!cfdata->locals.action[0])) return;
@ -133,6 +143,7 @@ _fill_data(E_Config_Dialog_Data *cfdata)
cfdata->locals.source = eina_stringshare_add("");
cfdata->locals.cur = NULL;
cfdata->locals.dia = NULL;
cfdata->locals.gesture_open_input_devices = e_config->gesture_open_input_devices;
cfdata->binding.swipe = NULL;
EINA_LIST_FOREACH(e_bindings->swipe_bindings, l, bi)
@ -912,7 +923,7 @@ _help_swipe_bindings_cb(void *data EINA_UNUSED, void *data2 EINA_UNUSED)
static Evas_Object *
_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata)
{
Evas_Object *o, *ol, *ot, *of, *ob;
Evas_Object *o, *ol, *ot, *of, *ob, *oc;
cfdata->evas = evas;
o = e_widget_list_add(evas, 0, 0);
@ -963,6 +974,9 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
e_widget_list_object_append(o, ol, 1, 1, 0.5);
oc = e_widget_check_add(evas, _("Open input devices"), &(cfdata->locals.gesture_open_input_devices));
e_widget_list_object_append(o, oc, 1, 1, 0.5);
_update_swipe_binding_list(cfdata);
_fill_actions_list(cfdata);

View File

@ -289,7 +289,7 @@ _basic_create(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata)
grp++;
}
e_widget_toolbook_page_append(otb, NULL, _("Keyboard Layout"), ol,
1, 1, 1, 0, 0.0, 0.0);
1, 1, 1, 1, 0.0, 0.0);
/* Login */
ol = e_widget_list_add(evas, 0, 0);

View File

@ -17,6 +17,7 @@ struct _E_Config_Dialog_Data
Evas_Object *backlight_slider_fade;
int enable_idle_dim;
int ddc;
double backlight_normal;
double backlight_dim;
@ -56,6 +57,7 @@ _fill_data(E_Config_Dialog_Data *cfdata)
cfdata->backlight_dim = e_config->backlight.dim * 100.0;
cfdata->backlight_transition = e_config->backlight.transition;
cfdata->enable_idle_dim = e_config->backlight.idle_dim;
cfdata->ddc = e_config->backlight.ddc;
cfdata->backlight_timeout = e_config->backlight.timer;
cfdata->backlight_battery_timeout = e_config->backlight.battery_timer;
}
@ -87,6 +89,7 @@ _apply_data(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data *cfdata)
e_config->backlight.timer = lround(cfdata->backlight_timeout);
e_config->backlight.battery_timer = lround(cfdata->backlight_battery_timeout);
e_config->backlight.idle_dim = cfdata->enable_idle_dim;
e_config->backlight.ddc = cfdata->ddc;
e_backlight_mode_set(NULL, E_BACKLIGHT_MODE_NORMAL);
e_backlight_level_set(NULL, e_config->backlight.normal, -1.0);
@ -121,7 +124,8 @@ _advanced_check_changed(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data *
(!EINA_DBL_EQ(e_config->backlight.transition, cfdata->backlight_transition)) ||
(!EINA_DBL_EQ(e_config->backlight.timer, cfdata->backlight_timeout)) ||
(!EINA_DBL_EQ(e_config->backlight.battery_timer, cfdata->backlight_battery_timeout)) ||
(e_config->backlight.idle_dim != cfdata->enable_idle_dim);
(e_config->backlight.idle_dim != cfdata->enable_idle_dim) ||
(e_config->backlight.ddc != cfdata->ddc);
}
static int
@ -152,6 +156,9 @@ _advanced_create_widgets(E_Config_Dialog *cfd EINA_UNUSED, Evas *evas, E_Config_
&(cfdata->backlight_dim), NULL, 100);
e_widget_list_object_append(o, ob, 1, 1, 0.5);
ob = e_widget_check_add(evas, _("Desktop Monitor Support (DDC)"), &(cfdata->ddc));
e_widget_list_object_append(o, ob, 1, 1, 0.5);
ob = e_widget_check_add(evas, _("Idle Fade Time"), &(cfdata->enable_idle_dim));
e_widget_list_object_append(o, ob, 1, 1, 0.5);
ob = e_widget_slider_add(evas, 1, 0, _("%1.0f second(s)"), 5.0, 300.0, 1.0, 0,

View File

@ -1078,7 +1078,7 @@ _e_fwin_page_favorites_add(E_Fwin_Page *page)
e_widget_scrollframe_focus_object_set(o, page->flist);
page->flist_frame = o;
evas_object_size_hint_min_set(o, 128, 0);
evas_object_size_hint_min_set(o, 128 * e_scale, 0);
edje_object_part_swallow(page->fwin->bg_obj, "e.swallow.favorites", o);
}

View File

@ -163,7 +163,10 @@ _e_mod_menu_populate_item(void *data, Eio_File *handler EINA_UNUSED, const Eina_
return;
}
}
mime = efreet_mime_type_get(mi->label);
mime = efreet_mime_special_type_get(path);
if (!mime) mime = efreet_mime_globs_type_get(path);
if (!mime) mime = efreet_mime_fallback_type_get(path);
if (!mime) return;
if (!strncmp(mime, "image/", 6))
{
@ -406,7 +409,10 @@ _e_mod_menu_recent_cb(void *data EINA_UNUSED,
if (file)
{
const char *mime = efreet_mime_type_get(file);
const char *mime = efreet_mime_special_type_get(file);
if (!mime) mime = efreet_mime_globs_type_get(file);
if (!mime) mime = efreet_mime_fallback_type_get(file);
if (mime)
{
@ -437,13 +443,12 @@ _e_mod_menu_recent_cb(void *data EINA_UNUSED,
}
}
static void
_e_mod_menu_populate_recent_cb(void *data EINA_UNUSED,
_e_mod_menu_populate_recent_cb(void *data EINA_UNUSED,
E_Menu *m EINA_UNUSED,
E_Menu_Item *mi EINA_UNUSED)
{
Eina_List *l;
Eina_List *l, *ll;
Eina_List *files = (Eina_List *)e_exec_recent_files_get();
E_Exec_Recent_File *fl;
E_Menu *subm;
@ -459,7 +464,10 @@ _e_mod_menu_populate_recent_cb(void *data EINA_UNUSED,
fname = ecore_file_file_get(fl->file);
if (fname)
{
const char *mime = efreet_mime_type_get(fl->file);
const char *mime = efreet_mime_special_type_get(fl->file);
if (!mime) mime = efreet_mime_globs_type_get(fl->file);
if (!mime) mime = efreet_mime_fallback_type_get(fl->file);
mi2 = e_menu_item_new(subm);
e_menu_item_label_set(mi2, fname);
@ -469,19 +477,25 @@ _e_mod_menu_populate_recent_cb(void *data EINA_UNUSED,
e_menu_item_callback_set(mi2, _e_mod_menu_recent_cb, NULL);
if (mime)
{
const char *icon = NULL;
char buf[1024];
const char *icon_file, *edje_file;
const E_Config_Mime_Icon *minf;
snprintf(buf, sizeof(buf), "e/icons/fileman/mime/%s", mime);
edje_file = e_theme_edje_file_get("base/theme/icons", buf);
if (edje_file)
EINA_LIST_FOREACH(e_config->mime_icons, ll, minf)
{
e_menu_item_icon_edje_set(mi2, edje_file, buf);
if (!strcmp(minf->mime, mime))
{
icon = minf->icon;
break;
}
}
if ((icon) && (!strcmp(icon, "THUMB")))
e_menu_item_icon_file_set(mi2, fl->file);
else
{
icon_file = efreet_mime_type_icon_get(mime, e_config->icon_theme, 48);
e_menu_item_icon_file_set(mi2, icon_file);
snprintf(buf, sizeof(buf), "fileman/mime/%s", mime);
if (!e_util_menu_item_theme_icon_set(mi2, buf))
e_util_menu_item_theme_icon_set(mi2, "fileman/mime/unknown");
}
}
}
@ -489,7 +503,6 @@ _e_mod_menu_populate_recent_cb(void *data EINA_UNUSED,
e_menu_thaw(subm);
}
static void
_e_mod_fileman_add_recent(E_Menu *m,
Eina_Bool need_separator)

View File

@ -1948,10 +1948,21 @@ _ibar_cb_icon_move(void *data, Evas *e, Evas_Object *obj, void *event_info EINA_
if (!zone)
zone = eina_list_data_get(e_comp->zones);
}
if (chx - (len / 2) < zone->x)
if ((ic->ibar->inst->orient == E_GADCON_ORIENT_LEFT) ||
(ic->ibar->inst->orient == E_GADCON_ORIENT_CORNER_LT) ||
(ic->ibar->inst->orient == E_GADCON_ORIENT_CORNER_LB))
sig = "e,origin,left";
else if ((chx + (len / 2) > cw) || ((chx + (len / 2) > zone->x + zone->w)))
else if ((ic->ibar->inst->orient == E_GADCON_ORIENT_RIGHT) ||
(ic->ibar->inst->orient == E_GADCON_ORIENT_CORNER_RT) ||
(ic->ibar->inst->orient == E_GADCON_ORIENT_CORNER_RB))
sig = "e,origin,right";
else
{
if (chx - (len / 2) < zone->x)
sig = "e,origin,left";
else if ((chx + (len / 2) > cw) || ((chx + (len / 2) > zone->x + zone->w)))
sig = "e,origin,right";
}
_ibar_icon_signal_emit(ic, sig, "e");
}

View File

@ -342,6 +342,7 @@ _notification_popup_new(E_Notification_Notify *n, unsigned id)
if (zone == e_comp_object_util_zone_get(popup->win)) continue;
o = e_comp_object_util_mirror_add(popup->theme);
o = e_comp_object_util_add(o, E_COMP_OBJECT_TYPE_POPUP);
edje_object_signal_emit(o, "e,state,shadow,off", "e");
evas_object_name_set(o, "notification_mirror");
evas_object_data_set(o, "zone", zone);
evas_object_geometry_get(popup->win, NULL, NULL, &w, &h);

View File

@ -37,6 +37,7 @@ packagekit_icon_update(E_PackageKit_Module_Context *ctxt,
count++;
break;
default:
count++;
break;
}
}

View File

@ -1158,12 +1158,13 @@ _pager_cb_event_desk_show(void *data EINA_UNUSED, int type EINA_UNUSED, void *ev
{
E_Event_Desk_Show *ev = event;
Eina_List *l;
Pager *p;
Pager *p = NULL;
Pager_Popup *pp;
Pager_Desk *pd;
if (!eina_list_count(pagers)) return ECORE_CALLBACK_PASS_ON;
current_desk = ev->desk;
EINA_LIST_FOREACH(pagers, l, p)
{
if (p->zone != ev->desk->zone) continue;
@ -1172,20 +1173,29 @@ _pager_cb_event_desk_show(void *data EINA_UNUSED, int type EINA_UNUSED, void *ev
if (p->popup)
edje_object_part_text_set(p->popup->o_bg, "e.text.label", ev->desk->name);
break;
}
if ((pager_config->popup) && (!act_popup) &&
((ecore_time_get() - _pager_start_time) > 0.5)) //. not at start
{
if ((pp = _pager_popup_find(ev->desk->zone)))
evas_object_show(pp->popup);
{
evas_object_show(pp->popup);
pd = _pager_desk_find(pp->pager, current_desk);
if (pd) _pager_desk_select(pd);
}
else
pp = _pager_popup_new(ev->desk->zone, 0, EINA_TRUE);
{
pp = _pager_popup_new(ev->desk->zone, 0, EINA_TRUE);
}
if (pp->timer)
ecore_timer_loop_reset(pp->timer);
else
pp->timer = ecore_timer_add(pager_config->popup_speed,
_pager_popup_cb_timeout, pp);
if (p)
p->popup = pp;
}
return ECORE_CALLBACK_PASS_ON;
@ -1853,6 +1863,17 @@ static Eina_Bool
_pager_popup_cb_timeout(void *data)
{
Pager_Popup *pp = data;
Eina_List *l;
Pager *p;
EINA_LIST_FOREACH(pagers, l, p)
{
if (p->popup == pp)
{
p->popup = NULL;
break;
}
}
pp->timer = NULL;
_pager_popup_free(pp);
@ -1883,7 +1904,6 @@ static int
_pager_popup_show(void)
{
E_Zone *zone;
int x, y, w, h;
Pager_Popup *pp;
if ((act_popup) || (input_window)) return 0;
@ -1916,7 +1936,6 @@ _pager_popup_show(void)
(ECORE_EVENT_MOUSE_WHEEL, _pager_popup_cb_mouse_wheel, NULL));
act_popup = _pager_popup_new(zone, 1, EINA_FALSE);
evas_object_geometry_get(act_popup->pager->o_table, &x, &y, &w, &h);
current_desk = e_desk_current_get(zone);
return 1;
}

View File

@ -89,10 +89,11 @@ _img_write_end_cb(void *data EINA_UNUSED, int ev_type EINA_UNUSED, void *event)
if (ev->exe != img_write_exe) return EINA_TRUE;
_share_done();
if (cnp)
if ((cnp) && (cnp_file))
{
_cnp_file(cnp_file);
eina_stringshare_replace(&cnp_file, NULL);
cnp = EINA_FALSE;
}
return EINA_FALSE;
}

View File

@ -78,6 +78,7 @@ image_load(const char *name, const char *path, uint32_t *imgdata, int w, int h,
{
const char **ext, *exts[] =
{
".svg",
".png",
".jpg",
NULL
@ -103,7 +104,11 @@ image_load(const char *name, const char *path, uint32_t *imgdata, int w, int h,
};
snprintf(buf, sizeof(buf), "%s/%s", path, *theme);
if (!ecore_file_is_dir(buf)) continue;
if (!ecore_file_is_dir(buf))
{
printf("SYSTRAY: icon theme dir [%s] does not exist\n", buf);
continue;
}
for (i = sizes; *i; i++)
{
snprintf(buf, sizeof(buf), "%s/%s/%ux%u", path, *theme, *i, *i);
@ -113,15 +118,19 @@ image_load(const char *name, const char *path, uint32_t *imgdata, int w, int h,
snprintf(buf, sizeof(buf), "%s/%s/%ux%u/status/%s%s", path, *theme, *i, *i, name, *ext);
if (ecore_file_exists(buf))
{
printf("SYSTRAY: actually load [%s] size=%lli\n", buf, ecore_file_size(buf));
e_icon_file_set(image, buf);
return;
}
printf("SYSTRAY: image [%s] does not exist\n", buf);
snprintf(buf, sizeof(buf), "%s/%s/%ux%u/apps/%s%s", path, *theme, *i, *i, name, *ext);
if (ecore_file_exists(buf))
{
printf("SYSTRAY: actually load [%s] size=%lli\n", buf, ecore_file_size(buf));
e_icon_file_set(image, buf);
return;
}
printf("SYSTRAY: image [%s] does not exist\n", buf);
}
}
}
@ -130,16 +139,23 @@ image_load(const char *name, const char *path, uint32_t *imgdata, int w, int h,
snprintf(buf, sizeof(buf), "%s/%s%s", path, name, *ext);
if (ecore_file_exists(buf))
{
printf("SYSTRAY: actually load [%s] size=%lli\n", buf, ecore_file_size(buf));
e_icon_file_set(image, buf);
return;
}
printf("SYSTRAY: image [%s] does not exist\n", buf);
}
}
if (name && name[0] && e_util_icon_theme_set(image, name)) return;
if (name && name[0] && e_util_icon_theme_set(image, name))
{
printf("SYSTRAY: set icon theme %s\n", name);
return;
}
if (imgdata)
{
Evas_Object *o;
printf("SYSTRAY: set icon custom data %ix%i\n", w, h);
o = evas_object_image_filled_add(evas_object_evas_get(image));
evas_object_image_alpha_set(o, 1);
evas_object_image_size_set(o, w, h);
@ -147,7 +163,10 @@ image_load(const char *name, const char *path, uint32_t *imgdata, int w, int h,
e_icon_image_object_set(image, o);
}
else
e_util_icon_theme_set(image, "dialog-error");
{
e_util_icon_theme_set(image, "dialog-error");
printf("SYSTRAY: icon requested just does not exist - error in client\n");
}
}
static void

View File

@ -232,9 +232,7 @@ _create_data(E_Config_Dialog *cfd)
static void
_list_del(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event EINA_UNUSED)
{
Evas_Object **o;
o = data;
Evas_Object **o = data;
*o = NULL;
}
@ -246,12 +244,29 @@ _free_data(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data *cfdata)
_xkb.cfd = NULL;
if (cfdata->compose_list)
evas_object_event_callback_del(cfdata->compose_list, EVAS_CALLBACK_DEL, _list_del);
if (cfdata->lv3_list)
evas_object_event_callback_del(cfdata->lv3_list, EVAS_CALLBACK_DEL, _list_del);
if (cfdata->switch_list)
evas_object_event_callback_del(cfdata->switch_list, EVAS_CALLBACK_DEL, _list_del);
#define FRAME_DEL(list) \
if (list) { \
evas_object_del(list); \
list = NULL; \
}
FRAME_DEL(cfdata->compose_list);
FRAME_DEL(cfdata->lv3_list);
FRAME_DEL(cfdata->switch_list);
FRAME_DEL(cfdata->led_list);
FRAME_DEL(cfdata->ctrl_list);
FRAME_DEL(cfdata->keypad_list);
FRAME_DEL(cfdata->delkeypad_list);
FRAME_DEL(cfdata->capslock_list);
FRAME_DEL(cfdata->altwin_list);
FRAME_DEL(cfdata->currency_list);
FRAME_DEL(cfdata->lv5_list);
FRAME_DEL(cfdata->spacebar_list);
FRAME_DEL(cfdata->japan_list);
FRAME_DEL(cfdata->korean_list);
FRAME_DEL(cfdata->esperanto_list);
FRAME_DEL(cfdata->solaris_list);
FRAME_DEL(cfdata->terminate_list);
FRAME_DEL(cfdata->misc_list);
EINA_LIST_FREE(cfdata->cfg_layouts, cl)
{