Time Nick Message 13:46 Krock will merge #9503 in 15 minutes 13:46 ShadowBot https://github.com/minetest/minetest/issues/9503 -- Fix some chatcommands not returning a value by Wuzzy2 14:01 Krock merging... 15:12 rubenwardy sfan5: pong 15:16 sfan5 rubenwardy: I compiled Minetest for the Raspberry Pi for use with the open GLES driver that apparently works on newer pis 15:16 sfan5 so if you have some time, It'd be nice if you could test it on yours https://kitsunemimi.pw/tmp/minetest-5.2.0-dev-rpi%2B.tar.gz 15:17 rubenwardy ok cool 15:17 rubenwardy I'm in a cafe currently but may be able to later 15:17 rubenwardy although, I have no keyboard for the pi so hope I can still ssh in.... 15:18 rubenwardy since my keyboard broke, I've been using cli macro tools to move the mouse and type lol 15:18 rubenwardy when I needed to rarely do that on the pi 15:26 rubenwardy lol (irrlicht source code) https://rwdy.uk/Bmy65.png 15:29 Krock only the GUI needs to send GUI events 15:31 rubenwardy trying to work out how to make events pass through non-interactable elements 15:32 Krock either you set the element temporary to invisible, or you return false on the callback 15:34 rubenwardy the latter doesn't work 15:34 rubenwardy because it only sends mouse clicks to the focused event 15:34 rubenwardy and returning false doesn't prevent it from being focused 15:34 Krock then don't allow it to be focussed 15:34 rubenwardy I'm trying to work out hwo 15:36 Krock or set the rectangle for the drawing area to 0 pixels area and let it overlap (no clip= 15:36 rubenwardy I can override getElementFromPoint to return null maybe 15:40 rubenwardy damnit, that function is virtual in Irrlicht dev and non-virtual in Irrlicht stable 15:40 rubenwardy might have to be the rectangle hack 15:43 rubenwardy Irrlicht really should have followed release early; release often 15:43 rubenwardy 7 years since the last release is a joke 15:43 rubenwardy last release that wasn't a patch/backport release, that is 15:45 Krock maybe it would help to infiltrate/help Irrlicht by at least reviewing the PRs, and convince to an update? 15:45 Krock keyboard input is broken since ever 15:48 rubenwardy I've found a disgusting hack 15:49 rubenwardy it works if you do setVisible(false); and then ignore isVisible in the element's draw(); 15:49 Krock yay 15:50 DS-minetest nice idea, but you would still have to use an own class, ie. you can't use irrlicht's image element 15:51 rubenwardy yes, this works with ItemImage though 15:51 rubenwardy and I will create an own class for image for this 15:53 rubenwardy is there a better way to do this? 15:53 rubenwardy I wonder if we could implement getElementFromPoint and event logic ourself in someway 15:53 rubenwardy eugh 15:58 DS-minetest there should be a function in the guielement class that returns whether it is at a given point. eg. a circle isn't in the edges of its rect 15:59 DS-minetest and an image in the weird minetest formspec is nowhere 15:59 DS-minetest getElementFromPoint would then not only check the rect but also call this function 16:00 DS-minetest (or just call the function and the function checks whether the point is in the rect) 16:00 rubenwardy getElementFromPoint is called on each element 16:00 rubenwardy however, it's not virtual 16:00 rubenwardy so I can't change it 16:01 rubenwardy if we pulled Irrlicht GUI into our source code, we could do this 16:01 rubenwardy it's virtual in latest dev of Irrlicht 16:01 DS-minetest the irrlich gui source should be included into minetest at some point anyway 16:01 rubenwardy pulling irrlicht into our source code isn't a good idea whilst in a feature freeze 16:01 DS-minetest + 16:02 DS-minetest feature freeze => fix remaining bugs with hacks 16:17 rubenwardy #9516 16:17 ShadowBot https://github.com/minetest/minetest/issues/9516 -- Fix non-interactable elements blocking input by rubenwardy 16:20 DS-minetest you could add to that code comments that the draw function ignores this and the element is drawn anyway 16:21 DS-minetest (the codecomments to the calls to setVisible(false)) 16:21 DS-minetest oh, and background elements need the not drawing when not isVisible btw. 16:22 rubenwardy I think I've done that? 16:23 rubenwardy some elements haven't been checking isVisisble in draw() because it was assumed that it wouldn't be called I guess 16:26 DS-minetest backgrounds use setVisible, eg. here: https://github.com/minetest/minetest/blob/1441281809d9961ff7498df86601db151956b030/src/gui/guiFormSpecMenu.cpp#L1036 16:27 DS-minetest and then here: https://github.com/minetest/minetest/blob/1441281809d9961ff7498df86601db151956b030/src/gui/guiFormSpecMenu.cpp#L3234-L3241 16:28 DS-minetest but this could be fixed by first adding an element to fsmenu that holds all backgrounds as its children and using that element as parent 16:28 rubenwardy it's also needed by static text 16:29 rubenwardy haven't we always used a GUI element for labels? 16:29 rubenwardy so that isn't necessarily a regression 16:32 rubenwardy alternative: the OnEVent of the element could do setVisible(false) then call getElementFromPoint again 16:32 rubenwardy slower 16:32 rubenwardy but slightly less hacky - is visible will still be usable 16:33 DS-minetest I've used that alternative in invlists 16:34 DS-minetest you are right with the labels, they always used a guielement 16:39 Krock copying yet another source file from irrlicht hurts my soul 16:39 Krock it's getting increasingly worse 16:44 rubenwardy we will need to import all of the GUI code into our code base, and put into a guix namespace 16:44 rubenwardy then remove all this crap 16:44 rubenwardy although, I am wonder whether we should give up on fixing formspecs and do another GUI implementation alongside 16:44 rubenwardy it'll be easier to stop regressions 16:51 DS-minetest here's the change that would have to be done to not break backgrounds when ignoring isVisible in drawing: https://github.com/Desour/minetest/commit/6580abc54c1b8404ff9b3c351b5dd8f3f1884e5d 16:51 rubenwardy I don't think we actually need to apply this hack to backgrounds 16:51 rubenwardy because they've always been the backmost things 16:52 DS-minetest yes 16:52 rubenwardy huh 16:52 rubenwardy the inventory list hack doesn't work 16:52 rubenwardy I guess because OnEvent isn't used to change focus 16:52 DS-minetest it doesn't work with hovering 16:52 rubenwardy perhaps the same hack should be done for focus change gui events 16:54 rubenwardy how should I fix tooltips? 16:54 rubenwardy It's not strictly a regression, labels have always stolen hover 16:54 rubenwardy but it would be nice to fix 16:56 DS-minetest hm, one could store all the elements that should only be visible when drawing in a vector and set them only visible before drawing and set them invisbile directly after 16:57 DS-minetest then one wouldn't have to copy the source of image and label gui element 16:58 rubenwardy oh that might work 16:59 rubenwardy how does gui environment get events? Would be nice to do that hack around the OnEvent, rather than around the draw 16:59 DS-minetest idk 17:03 rubenwardy cutealien claims there's only a few months before 1.9 is released 17:03 rubenwardy [x] doubt 17:42 Krock #9461 #9515 #9514 need a second review 17:42 ShadowBot https://github.com/minetest/minetest/issues/9461 -- Some minor Lua API documentation clarifications by Wuzzy2 17:42 ShadowBot https://github.com/minetest/minetest/issues/9515 -- Transform texture UVs with provided tex. matrix (#9481) by dcbrwn 17:42 ShadowBot https://github.com/minetest/minetest/issues/9514 -- Fix new nodes not being light up by dcbrwn 17:43 Krock #9411 needs re-reviewing after the recent changes ( rubenwardy ?) 17:43 ShadowBot https://github.com/minetest/minetest/issues/9411 -- Add starting frame to `animated_image` by v-rob 18:20 Wuzzy Is it OK to create a node with drawtype="flowingliquid" if the node is not a liquid itself (liquid_type = "none")? 18:20 Wuzzy I know there's an assert that forbids this, but I wonder if this assert is justified. 19:33 Krock *shrug* Might need testing to ensure it really doesn't cause side-effects 19:34 Krock I'd imagine the liquid flow would simply let it vanish