pekat0 on Nostr: Java8 com JavaFX, difícil tarefa de atualizar um sistema legado que esta a 200 ...
Java8 com JavaFX, difícil tarefa de atualizar um sistema legado que esta a 200 updates atrás, sistema roda em um Linux dedicado tipo totem, com mini gerenciador de janelas o "twm", apenas aplicação principal no X.
Ao pular para última versão o mesmo "binário" .jar roda deslocado (posição da janela não nasce no topo e esquerda), mesmo na programação estar com setX(0) e setY(0), o gerenciador de janelas é o mesmo então a culpa é do Java.
Com necessidade de ter o último java entra a astúcia de mover a janela da aplicação via script. Eu já tinha ideia de como fazer isso buscando o ID da janela, quem nunca fez um keylogger que monitorava a barra de título da aplicação?
`xdotool` essa ferramenta é o canivete suiço de simulação de input no X.
Chatgpt não ajudou com um script simples, quando se trata de uma tarefa complexa é melhor quebrar o problema em pequenos problemas e dai ele pode ajudar. Mas o que resolveu mesmo foi ler a documentação, pois a solução dada pela I.A era pegar o id da janela pelo título da aplicação. Funcionou pra primeira janela porém saber o título de todos os outros forms ficou inviável, a solução foi ler a documentação e achar a opção `getwindowfocus do xdotool.
Assim rodando o script a cada 2 segundos a janela que tiver o foco é movida ao X(0) e Y(0) resultando na centralização da janela, considerando que as janelas tem o tamanho total da tela.
Esse tipo de solução que acho díficil a IA se virar sozinha, ela ajuda mas não consegue ver o macro.
#blog #tech
Published at
2025-03-18 00:34:52 GMTEvent JSON
{
"id": "d3e2ad03c9488950ccefc72f8731afb13b569235456bde178cd8f37a638aa9ea",
"pubkey": "d52f4f2066d5e4e7a069c38efa406937e9142310fc77bbf51b0f868398efcdfb",
"created_at": 1742258092,
"kind": 1,
"tags": [
[
"t",
"blog"
],
[
"t",
"tech"
],
[
"r",
"wss://nostrelites.org/"
],
[
"r",
"wss://satsage.xyz/"
],
[
"r",
"wss://wot.azzamo.net/"
],
[
"r",
"wss://wot.nostr.party/"
],
[
"r",
"wss://zap.watch/"
],
[
"r",
"wss://relay.primal.net/"
],
[
"r",
"wss://wot.girino.org/"
],
[
"r",
"wss://relay.lexingtonbitcoin.org/"
],
[
"r",
"wss://wot.sovbit.host/"
]
],
"content": "Java8 com JavaFX, difícil tarefa de atualizar um sistema legado que esta a 200 updates atrás, sistema roda em um Linux dedicado tipo totem, com mini gerenciador de janelas o \"twm\", apenas aplicação principal no X.\n\nAo pular para última versão o mesmo \"binário\" .jar roda deslocado (posição da janela não nasce no topo e esquerda), mesmo na programação estar com setX(0) e setY(0), o gerenciador de janelas é o mesmo então a culpa é do Java.\n\nCom necessidade de ter o último java entra a astúcia de mover a janela da aplicação via script. Eu já tinha ideia de como fazer isso buscando o ID da janela, quem nunca fez um keylogger que monitorava a barra de título da aplicação?\n\n`xdotool` essa ferramenta é o canivete suiço de simulação de input no X.\n\nhttps://m.primal.net/PjfW.png \n\nChatgpt não ajudou com um script simples, quando se trata de uma tarefa complexa é melhor quebrar o problema em pequenos problemas e dai ele pode ajudar. Mas o que resolveu mesmo foi ler a documentação, pois a solução dada pela I.A era pegar o id da janela pelo título da aplicação. Funcionou pra primeira janela porém saber o título de todos os outros forms ficou inviável, a solução foi ler a documentação e achar a opção `getwindowfocus do xdotool.\n\nhttps://m.primal.net/Pjfe.png \n\nAssim rodando o script a cada 2 segundos a janela que tiver o foco é movida ao X(0) e Y(0) resultando na centralização da janela, considerando que as janelas tem o tamanho total da tela.\n\nEsse tipo de solução que acho díficil a IA se virar sozinha, ela ajuda mas não consegue ver o macro.\n#blog #tech ",
"sig": "349064af3a13e268c193db35e3f90c02344309a6f17c610043bdc0af6cc672e8ef19a7a92ae545a7ec6c5dd452efd27390139788042cb9723ca4e6f309ba2fa4"
}