abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 00:22 | Nová verze

    Byla vydána betaverze Fedora Linuxu 44 (ChangeSet), tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 14. dubna.

    Ladislav Hagara | Komentářů: 0
    včera 12:11 | IT novinky

    Open source router Turris Omnia NG Wired je v prodeji. Jedná se o Turris Omnia NG bez Wi-Fi. Je připraven pro zamontování do racku.

    Ladislav Hagara | Komentářů: 5
    včera 11:44 | Pozvánky

    Sníh roztál a roztávají i bastlíři. Žene se na nás celá řada konferencí a seminářů technického rázu. Zajímá vás, jaké? Pak se připojte k 60. Virtuální Bastlírně, tedy k veřejné diskuzi bastlířů, techniků, učitelů i vědců. Jako vždy přijde na přetřes spousta novinek ze světa hardwaru, softwaru i bizáru. Na začátek lze očekávat hardwarová témata, tedy například nový KiCAD 10, nové akcelerátory LLM s nízkou spotřebou, nejvíce fosforeskující

    … více »
    bkralik | Komentářů: 1
    včera 11:22 | Zajímavý článek

    IuRe (Iuridicum Remedium) v rámci programu Digitální svobody zveřejnila analýzu dopadů a efektivity systémů ověřování věku v digitálním prostoru, která srovnává implementace ověřování věku v Austrálii, Velké Británii a Evropské unii.

    |🇵🇸 | Komentářů: 1
    včera 04:22 | Nová verze

    Multiplatformní emulátor terminálu Ghostty byl vydán ve verzi 1.3 (𝕏, Mastodon). Přehled novinek a vylepšení v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 03:55 | Nová verze

    Byla vydána nová verze 14.4 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 5
    9.3. 23:22 | Nová verze

    Databáze DuckDB (Wikipedie) byla vydána ve verzi 1.5.0. S kódovým názvem Variegata (husice rajská). Přináší řadu vylepšení, včetně nového ergonomičtějšího CLI klienta nebo podporu pro typ VARIANT a vestavěný typ GEOMETRY.

    Ladislav Hagara | Komentářů: 0
    9.3. 13:44 | Zajímavý software

    V pátek 6. a sobotu 7. března proběhl v pražském sídle Nejvyššího kontrolního úřadu (NKÚ) Hackathon veřejné správy 7.1. Publikovány byly vytvořené aplikace. V kategorii projektů rozvíjených z krajského kola zvítězil tým „Mackokládi“. Čtyři středoškoláci ze Dvora Králové uspěli s aplikací KompaZ. Jde o digitálního průvodce, který pomůže s rychlou a srozumitelnou orientací v životních i krizových situacích „krok za krokem“. Aplikace

    … více »
    Ladislav Hagara | Komentářů: 13
    9.3. 13:33 | Nová verze

    QGIS, svobodný desktopový GIS, byl vydán v nové hlavní verzi 4.0. Změny zahrnují několik nových analytických a editačních funkcí, rozšíření podpory 3D, více možností úprav uživatelského rozhraní či mnoho dalších zlepšení použitelnosti. Řada 3.44 má aktualizace plánovány do září.

    |🇵🇸 | Komentářů: 0
    9.3. 05:11 | Komunita

    Dan Blanchard vydal knihovnu pro Python chardet v nové verzi 7.0.0. S novou verzí byla knihovna přelicencována z LGPL na MIT. Souhlasili s tím všichni přispěvatelé? Dan Blanchard souhlasy vůbec neřešil. Zaúkoloval umělou inteligenci (Claude), aby knihovnu zcela přepsala a výslovně jí nařídil, aby nepoužila žádný LGPL kód. Dan Blanchard tvrdí, že se jedná o clean room design. Protistrana argumentuje, že umělá inteligence byla trénována

    … více »
    Ladislav Hagara | Komentářů: 23
    Které desktopové prostředí na Linuxu používáte?
     (16%)
     (6%)
     (0%)
     (11%)
     (29%)
     (2%)
     (5%)
     (2%)
     (12%)
     (25%)
    Celkem 1049 hlasů
     Komentářů: 25, poslední 3.2. 19:50
    Rozcestník

    Dotaz: Přeposílání XEvent

    17.6.2010 16:58 kralyk z abclinuxu | skóre: 29 | blog:
    Přeposílání XEvent
    Přečteno: 214×
    Ahoj,
    řeším následující problém: Potřebuju globálně odchytávat klávesu; při stlačení něco udělat a při uvolnění zase něco udělat (například zobrazi a skrýt tooltip apod., to je jedno).

    Našel jsem zatím dva způsoby řešení.
    1.) Můžu Pravidelně (v nějakém vedlejším threadu) volat XQueryKeymap() a zjišťovat si, kdy je klávesa dole a kdy nahoře. Četl jsem ale, že tahle metoda má výkonový dopad - zatěžuje Xka.
    2.) Můžu použít XGrabKey na root window, což je jednoduché a čisté, problém ale je, že daná klávesa bude fungovat pouze v mém programu, bude grabována výhradně. Abych tenhle problém obešel, přepošlu vždycky daný XEvent znova.
    Kód vypadá takhle:
      hotkey = XKeysymToKeycode(d, XStringToKeysym("Super_L"));
      XGrabKey(d, hotkey, 0, root, True, GrabModeAsync, GrabModeAsync);
      while (1)
      {
        XNextEvent(d, &e);
        if (e.type == KeyPress)
        {
          cout << "KeyPress:\n  keycode: " << e.xkey.keycode << " state: " << hex << e.xkey.state << endl;
          XSendEvent(d, root, False, KeyPressMask, &e);
        }
        if (e.type == KeyRelease)
        {
          cout << "KeyRelease:\n  keycode: " << e.xkey.keycode << " state: " << hex << e.xkey.state << endl;
          XSendEvent(d, root, False, KeyReleaseMask, &e);
        }
      }
    
    Blbý je, že tohle nefunguje jak má. Teda XEvent se přepošle, ale například u klávesových zkratek pro compiz, konkrétně u Expa, mi to dělalo divný věci; expo se spustilo, ale focus klávesnice zůstal na aktivní ploše, takže se expo nedalo ovládat klávesnicí, a stisky kláves se posílaly aplikaci s focusem na aktivní ploše místo compizu.
    Co dělám špatně?

    Díky za všecky rady.

    Odpovědi

    22.6.2010 12:27 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Přeposílání XEvent
    Opravdu nikdo neví?
    Anebo nevíte případně, kde bych se mohl po internetu ještě zeptat (anglicky mluvim)?
    22.6.2010 13:38 chrono
    Rozbalit Rozbalit vše Re: Přeposílání XEvent
    Nebolo by jednoduchšie použiť Gtk a gdk_window_add_filter (prípadne niečo podobné z Qt)? Tam potom stačí vrátiť GDK_FILTER_REMOVE alebo GDK_FILTER_CONTINUE a Gdk sa postará o poslanie tej udalosti správnemu oknu.
    22.6.2010 15:20 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Přeposílání XEvent
    Používám tenhle mechanismus v Qt, problém je, že když event ve filtru odmítnu, Qt jej přepošle "správnému oknu" pouze v rámci aplikace, ne v rámci celého WM. Nevím, jak je tohle u GTK, ale hádám, že to bude stejné...

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.