Pi WebOS
- 7 Devlogs
- 15 Total hours
A WebOS from the WebOS mission, made by Pi
A WebOS from the WebOS mission, made by Pi
Custom themes!
Sorry, this is a short devlog, but I just finished the tedious task of letting the JS update every color in the CSS via CSS variables.
Luckily, I had thought ahead and made everything in the CSS already use a variable but there’s a lot of hardcoded values I had to manually input.
Draggable files on the desktop :)
.
I really like how smooth and bouncy the animation is, and I’m really proud of how well I fit the files in with the rest of the theme. Double clicking gives a really satisfying fluid motion.
Also, they open the windows :)
.
Sidenote, I added keyboard shortcuts! Notably, esc to close windows and cmd z to undo the closing.
I really had to balance the command z because I didn’t want it to undo writing text, but I also didn’t want to completely disable command z on my page. text
Learned another basic JavaScript principle again (unpacking multiple value) :)
Meanwhile, I could do this ten times faster in Python without having to look something up every minute or so.
Browser in a website = (Pi WebOS)²
Behind the scenes there’s a lot that I’ve done.
Mainly, the window content is actually styled (and a few new windows have been added!), but there a a ton of small things that had to get done first.
There is a working (kind of) web browser that displays the url in an iframe, which is really cool, and actually not too difficult. It can’t display all sites because many popular sites intentionally disable being shown in an iframe, but it can go to hackclub.com.
I’ve added more windows and some other miscellaneous features. There was a lot of debugging, and coincidentally also a lot of forgotten keywords, like “let”. I’m too used to Python. I haven’t styled the windows yet, though.
Starting the WebOS basic mission. I have windows displaying, moving, and closable.
Next is adding content to the windows, but also making the nav menu do stuff.
I had a weird bug with the rem unit changing based on the parent height. If you know advanced CSS, you’ll understand why that’s strange :)