linuxdeepin / developer-center

Deepin developer center, provide developer wiki and community forum.
451 stars 73 forks source link

Language layout indicator disappears from tray #1139

Closed thedrint closed 3 years ago

thedrint commented 5 years ago

Describe the bug

Language indicator disappering after reboot.

To Reproduce

Steps to reproduce the behavior:

  1. Install fresh 15.9.
  2. Add second lang layout.
  3. Check that it works and lang indicator showed up in tray.
  4. Reboot
  5. See that no indicator in tray.

And even if you delete and add secondary language (this helps to restore indicator in tray) - after reboot, indicator always disappers.

Expected behavior

Lang indicator must be show always if you have more than 1 language.

Screenshots

image

Enviroments:

PC, Fresh install

Distro & Version

Linux Deepin 15.9, 15.9.3, 15.10

thedrint commented 5 years ago

There is dde-dock.log after reboot:

dde-dock startup
2019-05-03, 20:10:43.430 [Debug  ] [                                                         0] void RegisterDdeSession() true
2019-05-03, 20:10:43.472 [Debug  ] [                                                         0] void DockSettings::updateForbidPostions()
2019-05-03, 20:10:43.472 [Info   ] [                                                         0] "HDMI-0" QRect(0,0 1920x1080)
2019-05-03, 20:10:43.472 [Info   ] [                                                         0] "HDMI-2" QRect(1920,0 1920x1080)
2019-05-03, 20:10:43.472 [Info   ] [                                                         0] (QRect(1920,0 1920x1080)) 3840 1080
2019-05-03, 20:10:43.492 [Warning] [                                                         0] Connecting to deprecated signal QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)
2019-05-03, 20:10:43.694 [Debug  ] [                                                         0] using dock plugins dir: "/usr/lib/dde-dock/plugins"
2019-05-03, 20:10:43.829 [Debug  ] [                                                         0] screen info:  QPoint(0,1037) QRect(0,1037 1920x43)
2019-05-03, 20:10:43.896 [Debug  ] [                                                         0] "DockPlugin" init plugin:  "datetime"
2019-05-03, 20:10:43.896 [Debug  ] [                                                         0] load plugins item:  "datetime" "datetime" DatetimeWidget(0x55acc873f570)
2019-05-03, 20:10:43.896 [Debug  ] [                                                         0] "DockPlugin" init plugin finished:  "datetime"
2019-05-03, 20:10:44.107 [Debug  ] [                                                         0] screen info:  QPoint(0,1037) QRect(0,1037 1920x43)
2019-05-03, 20:10:44.396 [Debug  ] [                                                         0] "DockPlugin" init plugin:  "keyboard"
2019-05-03, 20:10:44.397 [Debug  ] [                                                         0] QVariant DBusExtendedAbstractInterface::internalPropGet(const char*, void*) "This Extended DBus interface is not valid yet."
2019-05-03, 20:10:44.397 [Debug  ] [                                                         0] QVariant DBusExtendedAbstractInterface::internalPropGet(const char*, void*) "This Extended DBus interface is not valid yet."
2019-05-03, 20:10:44.398 [Debug  ] [                                                         0] "DockPlugin" init plugin finished:  "keyboard"
2019-05-03, 20:10:44.425 [Warning] [                                                         0] failed to get all keyboard list:  "Process com.deepin.daemon.InputDevices exited with status 1"
2019-05-03, 20:10:44.896 [Debug  ] [                                                         0] "DockPlugin" init plugin:  "onboard"
2019-05-03, 20:10:44.896 [Debug  ] [                                                         0] "DockPlugin" init plugin finished:  "onboard"
2019-05-03, 20:10:45.396 [Debug  ] [                                                         0] "DockPlugin" init plugin:  "overlay-warning"
2019-05-03, 20:10:45.397 [Debug  ] [                                                         0] "DockPlugin" init plugin finished:  "overlay-warning"
2019-05-03, 20:10:45.897 [Debug  ] [                                                         0] "DockPlugin" init plugin:  "shutdown"
2019-05-03, 20:10:45.897 [Debug  ] [                                                         0] load plugins item:  "shutdown" "shutdown" PluginWidget(0x55acc8842ac0)
2019-05-03, 20:10:45.897 [Debug  ] [                                                         0] "DockPlugin" init plugin finished:  "shutdown"
2019-05-03, 20:10:46.399 [Debug  ] [                                                         0] "DockPlugin" init plugin:  "trash"
2019-05-03, 20:10:46.399 [Debug  ] [dapplication.cpp     Dtk::Widget::DApplicationPrivate::loadTranslator 279] translatePath after feedback: "/usr/share/dtkwidget/translations/dtkwidget2_ru"
2019-05-03, 20:10:46.400 [Debug  ] [dapplication.cpp     Dtk::Widget::DApplicationPrivate::loadTranslator 279] translatePath after feedback: "/usr/share/dde-file-manager/translations/dde-file-manager_ru"
2019-05-03, 20:10:46.400 [Debug  ] [                                                         0] true
2019-05-03, 20:10:46.400 [Debug  ] [                                                         0] "DockPlugin" init plugin finished:  "trash"
2019-05-03, 20:10:46.901 [Debug  ] [                                                         0] "DockPlugin" init plugin:  "tray"
2019-05-03, 20:10:46.901 [Debug  ] [                                                         0] "DockPlugin" init plugin finished:  "tray"
2019-05-03, 20:10:46.901 [Debug  ] [                                                         0] init Fashion mode tray plugin item
2019-05-03, 20:10:46.901 [Debug  ] [                                                         0] delay load 0 "keybord_layout" IndicatorTray(0x55acc88ff9c0)
2019-05-03, 20:10:46.901 [Debug  ] [                                                         0] using system tray plugins dir: "/usr/lib/dde-dock/plugins/system-trays"
2019-05-03, 20:10:46.902 [Warning] [                                                         0] QObject::connect: invalid null parameter
2019-05-03, 20:10:47.104 [Debug  ] [diskmountplugin.cpp  DiskMountPlugin::DiskMountPlugin    43] ===============init=============
2019-05-03, 20:10:47.105 [Debug  ] [                                                         0] "SystemTray" init plugin:  "disk-mount"
2019-05-03, 20:10:47.105 [Debug  ] [dapplication.cpp     Dtk::Widget::DApplicationPrivate::loadTranslator 279] translatePath after feedback: "/usr/share/dtkwidget/translations/dtkwidget2_ru"
2019-05-03, 20:10:47.105 [Debug  ] [dapplication.cpp     Dtk::Widget::DApplicationPrivate::loadTranslator 279] translatePath after feedback: "/usr/share/dde-disk-mount-plugin/translations/dde-disk-mount-plugin_ru"
2019-05-03, 20:10:47.105 [Debug  ] [diskmountplugin.cpp  DiskMountPlugin::init               63] true
2019-05-03, 20:10:47.105 [Debug  ] [diskmountplugin.cpp  DiskMountPlugin::init               65] ===============init==proxyInter===========
2019-05-03, 20:10:47.614 [Debug  ] [diskmountplugin.cpp  DiskMountPlugin::diskCountChanged   168] 4 false
2019-05-03, 20:10:47.614 [Debug  ] [                                                         0] load tray plugins item:  "disk-mount" "mount-item-key" DiskPluginItem(0x55acc88a0bc0)
2019-05-03, 20:10:47.614 [Debug  ] [                                                         0] load plugins item:  "tray" "mount-item-key" SystemTrayItem(0x55acc89ca010)
2019-05-03, 20:10:47.616 [Debug  ] [                                                         0] "SystemTray" init plugin finished:  "disk-mount"
2019-05-03, 20:10:47.618 [Debug  ] [                                                         0] "SystemTray" "com.deepin.daemon.Network" daemon has not started, waiting for signal
2019-05-03, 20:10:48.104 [Debug  ] [                                                         0] "SystemTray" "com.deepin.daemon.Power" daemon has not started, waiting for signal
2019-05-03, 20:10:48.568 [Debug  ] [                                                         0] "SystemTray" "com.deepin.daemon.Power" daemon started, init plugin and disconnect
2019-05-03, 20:10:48.568 [Debug  ] [                                                         0] "SystemTray" init plugin:  "power"
2019-05-03, 20:10:48.572 [Debug  ] [                                                         0] "SystemTray" init plugin finished:  "power"
2019-05-03, 20:10:48.607 [Debug  ] [                                                         0] "SystemTray" "com.deepin.daemon.Audio" daemon has not started, waiting for signal
2019-05-03, 20:10:48.620 [Debug  ] [                                                         0] "SystemTray" "com.deepin.daemon.Network" daemon started, init plugin and disconnect
2019-05-03, 20:10:48.620 [Debug  ] [                                                         0] "SystemTray" init plugin:  "network"
2019-05-03, 20:10:48.624 [Debug  ] [                                                         0] "SystemTray" init plugin finished:  "network"
2019-05-03, 20:10:48.625 [Debug  ] [                                                         0] load tray plugins item:  "network" "/org/freedesktop/NetworkManager/Devices/2" WiredItem(0x55acc85ffbc0)
2019-05-03, 20:10:48.626 [Debug  ] [                                                         0] load plugins item:  "tray" "/org/freedesktop/NetworkManager/Devices/2" SystemTrayItem(0x55acc88abe90)
2019-05-03, 20:10:48.656 [Debug  ] [                                                         0] Check connectivity using url: "https://www.baidu.com"
2019-05-03, 20:10:49.821 [Debug  ] [                                                         0] Connected to url: "https://www.baidu.com"
2019-05-03, 20:10:51.207 [Debug  ] [                                                         0] "SystemTray" "com.deepin.daemon.Audio" daemon started, init plugin and disconnect
2019-05-03, 20:10:51.207 [Debug  ] [                                                         0] "SystemTray" init plugin:  "sound"
2019-05-03, 20:10:51.214 [Debug  ] [                                                         0] load tray plugins item:  "sound" "sound-item-key" SoundItem(0x7fc6b4026890)
2019-05-03, 20:10:51.215 [Debug  ] [                                                         0] load plugins item:  "tray" "sound-item-key" SystemTrayItem(0x55acc88bdca0)
2019-05-03, 20:10:51.215 [Debug  ] [                                                         0] "SystemTray" init plugin finished:  "sound"
2019-05-03, 20:10:51.246 [Debug  ] [                                                         0] load plugins item:  "tray" "window:52428840" XEmbedTrayWidget(0x55acc88cdfd0)
2019-05-03, 20:10:51.658 [Warning] [                                                         0] requestActivate() called for  QWidgetWindow(0x55acc86a2cb0, name="Dtk::Widget::DArrowRectangleClassWindow")  which has Qt::WindowDoesNotAcceptFocus set.
2019-05-03, 20:10:53.066 [Debug  ] [                                                         0] app item clicked, name: "Файловый Менеджер" id: "e2T5ccc7613" my-id: "e2T5ccc7613" icon: "dde-file-manager"
2019-05-03, 20:10:53.070 [Debug  ] [startupnotificationmonitor.cpp monitor_event_func                  51] startup notification initiated:  startdde-5684-pc-dde-file-manager-0_TIME21821
2019-05-03, 20:10:53.382 [Debug  ] [startupnotificationmonitor.cpp monitor_event_func                  59] startup notification completed:  startdde-5684-pc-dde-file-manager-0_TIME21821
2019-05-03, 20:11:45.784 [Debug  ] [startupnotificationmonitor.cpp monitor_event_func                  51] startup notification initiated:  startdde-5684-pc-sublime-text-dev-1_TIME44734
2019-05-03, 20:11:45.900 [Debug  ] [startupnotificationmonitor.cpp monitor_event_func                  59] startup notification completed:  startdde-5684-pc-sublime-text-dev-1_TIME44734

It has one interesting record:

failed to get all keyboard list:  "Process com.deepin.daemon.InputDevices exited with status 1"

I think this is reason why keyboard indicator not showing. No layouts from com.deepin.daemon.InputDevices - not to show indicator, as described in https://github.com/linuxdeepin/dde-dock/blob/master/plugins/keyboard-layout/dbusadaptors.cpp#L50

But why this process is exited with status 1?

thedrint commented 5 years ago

With help of journalctl -x i found reason:

мая 03 20:10:44 pc dbus-daemon[5708]: [session uid=1000 pid=5708] Activating service name='com.deepin.daemon.InputDevices' requested by ':1.18' (uid=1000 pid=5885 comm="/usr/bin/dde-dock " label="unconfined")
мая 03 20:10:44 pc com.deepin.daemon.InputDevices[5708]: <warning> main.go:80: session manager does not allow me to run
мая 03 20:10:44 pc daemon/dde-session-daemon[5911]: main.go:80: session manager does not allow me to run
мая 03 20:10:44 pc dbus-daemon[5708]: [session uid=1000 pid=5708] Activated service 'com.deepin.daemon.InputDevices' failed: Process com.deepin.daemon.InputDevices exited with status 1

But i don't know why session manager didn't allow to run InputDevices service.

thedrint commented 5 years ago

One note: i can reproduce it on my pc installation (15.9.3, 15.10, 15.9.3 => 15.10 update). But i can't reproduce it on same configuration in virtualbox.

justforlxz commented 3 years ago

Sorry, this issue will be closed soon. If it is necessary to discuss it again, please create a new issue.