LINUX.ORG.RU

Посмотреть что-ли заново? A то я его сразу удалил, глючил если менять его настройки через конфиг, хотел чтобы он «на лету» применял изменения, как это делает Tilix (через dconf)

dmitry237 ★★★
()
Ответ на: комментарий от Toxo2

Там теперь такое:

  g_object_get (G_OBJECT (app->preferences),
                "shortcuts-no-menukey", &no_key,
                NULL);
  g_object_set (G_OBJECT (gtk_settings_get_default ()),
                "gtk-menu-bar-accel",
                no_key ? NULL : app->initial_menu_bar_accel,
                NULL);
и, возможно, собака порылась где-то тут:
property gtk-menu-bar-accel: utf8 [ read, write ]
Keybinding to activate the menu bar.
Type:	gchar*
Deprecated since:	3.10
This setting can still be used for application overrides, but will be ignored in the future.

по крайней мере у меня так и не получилось заставить xfce4 в Arch реагировать на изменения gtk-menu-bar-accel. Что туда ни пиши - всё равно F10.

Toxo2 ★★★★
()
Последнее исправление: Toxo2 (всего исправлений: 1)
Ответ на: комментарий от superuser

Из последних изменений на F10 могло повлиять вот это:
https://gitlab.xfce.org/apps/xfce4-terminal/-/commit/86abcfefec1c994e1fe7bb94...

Но с другой стороны УМВР, я могу поменять/отключить «Show Menubar Temporarily» через Preferences->Shortcuts, а также отключить через Preferences->Advanced->Disable menu shortcut key (F10 by default)

Скорее всего имеет место комбинация настроек, при которой баг начинает воспроизводится.

PS Теперь понял, действительно при включенном показе меню, F10 не отключается.

arax ★★
() автор топика
Последнее исправление: arax (всего исправлений: 1)
Ответ на: комментарий от arax

убрал F10 отсюда https://gitlab.xfce.org/apps/xfce4-terminal/-/blob/86abcfefec1c994e1fe7bb94fb...
, пересобрал, установил - но всё равно на F10 меню активирует.
Похоже это где-то в GTK гвоздями прибили.

superuser ★★★★★
()
Последнее исправление: superuser (всего исправлений: 1)
Ответ на: комментарий от superuser

Мне кажется вот тот код по ссылке https://gitlab.xfce.org/apps/xfce4-terminal/-/commit/86abcfefec1c994e1fe7bb94...

ещё не дошел до релиза.

я так понимаю в этом коммите они как раз вместо фокуса с gtk-menu-bar-accel пытаются сделать через другой финт ушами.

тот код, который я давал - это из релиза, и вот именно его выпиливает этот коммит.

Вроде. Будем ждать на urxvt пока )

Toxo2 ★★★★
()
Ответ на: комментарий от superuser

Вот патч, он восстанавливает работу Preferences->Advanced->Disable menu shortcut key (F10 by default), для случая когда меню показывается и не портит «shortcuts: Restore broken action toggle-menubar»:

--- a/terminal/terminal-app.c
+++ b/terminal/terminal-app.c
@@ -54,7 +54,7 @@
 #define TERMINAL_DESKTOP_FILE (DATADIR "/applications/xfce4-terminal.desktop")
 
 
-
+static void     terminal_app_update_accels            (TerminalApp        *app);
 static void     terminal_app_finalize                 (GObject            *object);
 static void     terminal_app_update_windows_accels    (gpointer            user_data);
 static gboolean terminal_app_accel_map_load           (gpointer            user_data);
@@ -130,10 +130,16 @@
 {
   app->preferences = terminal_preferences_get ();
 
+  g_signal_connect_swapped (G_OBJECT (app->preferences), "notify::shortcuts-no-menukey",
+                            G_CALLBACK (terminal_app_update_accels), app);
+
+
   /* remember the original menu bar accel */
   g_object_get (G_OBJECT (gtk_settings_get_default ()),
                 "gtk-menu-bar-accel", &app->initial_menu_bar_accel,
                 NULL);
+
+  terminal_app_update_accels (app);
 
   /* schedule accel map load and update windows when finished */
   app->accel_map_load_id = gdk_threads_add_idle_full (G_PRIORITY_LOW, terminal_app_accel_map_load, app,
@@ -168,7 +174,7 @@
       gtk_widget_destroy (GTK_WIDGET (lp->data));
     }
   g_slist_free (app->windows);
-
+  g_signal_handlers_disconnect_by_func (G_OBJECT (app->preferences), G_CALLBACK (terminal_app_update_accels), app);
   g_object_unref (G_OBJECT (app->preferences));
 
   if (app->initial_menu_bar_accel != NULL)
@@ -180,6 +186,21 @@
   (*G_OBJECT_CLASS (terminal_app_parent_class)->finalize) (object);
 }
 
+static void
+terminal_app_update_accels (TerminalApp *app)
+{
+  gboolean        no_key;
+  GdkModifierType mod;
+  guint           key;
+
+  g_object_get (G_OBJECT (app->preferences),
+                "shortcuts-no-menukey", &no_key,
+                NULL);
+  g_object_set (G_OBJECT (gtk_settings_get_default ()),
+                "gtk-menu-bar-accel",
+                no_key ? NULL : app->initial_menu_bar_accel,
+                NULL);
+}
 
 
 static void

arax ★★
() автор топика
Ответ на: комментарий от arax

поставил самые свежие

[*] vte3-0.73.93_1 Terminal widget with improved accessibility and I18N support
[*] xfce4-terminal-1.1.0_1 Modern terminal emulator primarly for the Xfce desktop environment

0 $ clear && convert <(curl -s https://upload.wikimedia.org/wikipedia/en/7/7d/Lenna_%28test_image%29.png) sixel:-
0 $
всё равно пусто
Или vte 0.73.93 не самый свежий?

superuser ★★★★★
()
Последнее исправление: superuser (всего исправлений: 2)
Ответ на: комментарий от Shadow

Так теперь уже всё, никуда не денешься. Ждём первых ласточек, которые откажутся от поддержки X11. Так что обречен не wayland, а такие окружения как xfce. Придется выбирать: гном, кеды или красноглазый тайлинг.

bread
()
Ответ на: комментарий от superuser

Команда у тебя не правильная, вот так надо:

clear && convert -resize 800x800 <(curl -s https://raw.githubusercontent.com/unknownman512/lenna/main/lenna_full.jpg) sixel:-

arax ★★
() автор топика
Последнее исправление: arax (всего исправлений: 1)
Ответ на: комментарий от arax

Да, и vte собирать надо с флагом sixel=true и ещё нужен патч на xfce4-terminal

--- a/terminal/terminal-preferences-dialog.c
+++ b/terminal/terminal-preferences-dialog.c
@@ -1182,7 +1182,7 @@
   gtk_grid_attach (GTK_GRID (grid), button, 0, row, 6, 1);
   gtk_widget_show (button);
 
-#if VTE_CHECK_VERSION(0, 61, 90)
+//#if VTE_CHECK_VERSION(0, 61, 90)
   if (vte_get_feature_flags () & VTE_FEATURE_FLAG_SIXEL)
     {
       /* next row */
@@ -1195,7 +1195,7 @@
       gtk_grid_attach (GTK_GRID (grid), button, 0, row, 6, 1);
       gtk_widget_show (button);
     }
-#endif
+//#endif
 
   /* section: Custom colors */
   terminal_preferences_dialog_new_section (&frame, &vbox, &grid, &label, &row, _("Custom Colors"));

--- a/terminal/terminal-screen.c
+++ b/terminal/terminal-screen.c
@@ -3160,11 +3160,11 @@
 
 void terminal_screen_update_sixel (TerminalScreen *screen)
 {
-#if VTE_CHECK_VERSION (0, 61, 90)
+//#if VTE_CHECK_VERSION (0, 61, 90)
   gboolean enable_sixel;
   g_object_get (G_OBJECT (screen->preferences),
                 "enable-sixel", &enable_sixel,
                 NULL);
   vte_terminal_set_enable_sixel (VTE_TERMINAL (screen->terminal), enable_sixel);
-#endif
-}
+//#endif
+}


что-то этот VTE_CHECK_VERSION не правильно работает

superuser ★★★★★
()
Ответ на: комментарий от superuser

sixel=true

Это да

ещё нужен патч на xfce4-terminal

А вот это странно, у меня и так работает, возможно vte собрался с кривой версией, посмотреть можно:

cat /usr/include/vte-2.91/vte/vteversion.h

arax ★★
() автор топика
Ответ на: комментарий от arax

в xfce4-terminal/template:

makedepends="exo-devel vte3-devel"
без версии, видимо из-за этого (надо было поправить видимо).

В собранном новом пакете vte3-devel в /usr/include/vte-2.91/vte/vteversion.h:

...
#define VTE_MAJOR_VERSION (0)
...
#define VTE_MINOR_VERSION (73)
...
#define VTE_MICRO_VERSION (99)
...
все нормально к.м.к.
Я думал при сборке должно было новую версию подхватить...
Это наверно нюансы Void linux-а.

superuser ★★★★★
()
Последнее исправление: superuser (всего исправлений: 5)
Ответ на: комментарий от arax

convert -resize 800x800 <(curl

Вообще-то convert умеет скачивать картинки и без curl-а. Нужно только в policy.xml разрешить http и https протоколы. К тому же, c 7-й версии imagemagick, convert считается legacy и рекуомендуется использовать команду magick, у которой такой же синтаксис.

iron ★★★★★
()
Последнее исправление: iron (всего исправлений: 1)
Ответ на: комментарий от iron

Нужно только в policy.xml разрешить http и https протоколы

Похоже что они сейчас по дефолту разрешены

convert считается legacy и рекуомендуется использовать команду magick, у которой такой же синтаксис

~ ❯ ls -la /usr/bin/convert
lrwxrwxrwx 1 root root 6 Jul 30 21:08 /usr/bin/convert -> magick
arax ★★
() автор топика
Ответ на: комментарий от superuser

Так я и написал:

#if VTE_CHECK_VERSION(0, 61, 90)
А вот это странно

Сам макрос то, вроде нормальный:

#define VTE_CHECK_VERSION(major,minor,micro) \
  (VTE_MAJOR_VERSION > (major) || \
   (VTE_MAJOR_VERSION == (major) && VTE_MINOR_VERSION > (minor)) || \
   (VTE_MAJOR_VERSION == (major) && VTE_MINOR_VERSION == (minor) && VTE_MICRO_VERSION >= (micro)))

arax ★★
() автор топика
Последнее исправление: arax (всего исправлений: 1)
Ответ на: комментарий от superuser

Маловероятно, попробуй пересобрать xfce4-terminal без своего патча, должно работать, если не заработает, то проще забить ибо вариантов почему так может быть много.

arax ★★
() автор топика
Ответ на: комментарий от Toxo2

Будем ждать

а нет, нечего пока ждать - разработчик только 8 часов назад узнал о проблеме с F10

https://gitlab.xfce.org/apps/xfce4-terminal/-/issues/259#note_78710

пока поверит, что проблема есть, пока придумает как её обойти... )

Toxo2 ★★★★
()
Ответ на: комментарий от Toxo2

нечего пока ждать

вжик..

https://gitlab.xfce.org/apps/xfce4-terminal/-/issues/259#note_78740

Говорит - в 1.1.1 включит эту заплатку. Пересобрал с ней - действительно работает.

А ещё говорит, что глобальный gtk-menu-bar-accel таки работает в xfce4. Только настраивается не в ~/.config/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml, а в ~/.config/gtk-3.0/settings.ini. Пойду, попробую.

Спасибо.

Toxo2 ★★★★
()
Ответ на: комментарий от arax

Это да. При всём богатстве выбора - все возможные линуксоиды похоже на ЛОРе сидят )

---

Написал в settings.ini gtk-menu-bar-accel=F12 - удивительный эффект: в Thunar теперь в меню попадаю и по F12, и по F10. А в xfce4-terminal - ни так, ни эдак )

Toxo2 ★★★★
()
Последнее исправление: Toxo2 (всего исправлений: 1)
Ответ на: комментарий от Toxo2

удивительный эффект: в Thunar теперь в меню попадаю и по F12, и по F10. А в xfce4-terminal - ни так, ни эдак )

Линукс он такой )

PS Я тоже попробовал прописать gtk-menu-bar-accel=F12, теперь у меня в Thunar, как и раньше по F10 заходит, на F12 ноль эффекта, а вот в xfce4-terminal(с отключенной опцией Disable menu shortcut key) по F12, на F10 не реагирует, чудеса.

arax ★★
() автор топика
Последнее исправление: arax (всего исправлений: 2)