Porting to Web 2.0

It is hard for people that liked (and used) Web 1.0 WebStyles to now do most of the style changes in code.

I’m waiting to see how Web 2.0 changes in 2021 before trying to port projects. Not only for Styles but for other things missing that Geoff talked about adding to Web 2.0.

2 Likes

I agree, and that’s one of the reasons I built GraffitiStyle. I can load any CSS I want in to the app and apply it anywhere I want. I’ve written an app that converts my old Web 1.0 WebStyle project items to GraffitiStyle instances.

That said, it’s certainly not an impossible task to style your Xojo Web 2.0 app to suit your needs/likes without third-party code.

1 Like

I’ve been digging into the Xojo Web frameworks (the browser-side code, and building against the Xojo code) since I was first able to. For Web 1.0, that was the testing phase. For Web 2.0, that was well before public testing as an MVP. I can say beyond a shadow of a doubt that Web 2.0 is worth the transition. There are things I don’t like, and there are things that I think need improvement. Does that make Web 2.0 a non-starter? Not at all. That’s just how it goes. We adapt.

if I have to rewrite the code from scratch, I rather than adapt I wonder if xojo is the right tool for future developments

4 Likes

That’s your right to ask and evaluate. Nobody will argue against finding the right tool for the job.

1 Like

I think converting old css is not a big deal. You just need a little patience but then you get used immediately to the new structure (which is much more comfortable and versatile). What really scares me (besides the performance) is the Xojo roadmap. My fear is that the team is focusing too much on Android because so many users are waiting for it. There is a need for continuous updates and not 1 time every 6 months. The more developers have the chance to start using 2.0 the more it has the chance to grow and improve. Also they announced the new web feedback system that has not been seen yet. I don’t care so much if it’s web or not but that they start to listen to all the feedback because if not it’s all useless. Even if I have already converted all my custom controls, there is a lack of complete documentation with examples of the new WebSDKUIControls. The one provided with the latest version is really too lean.

Different members of the team are working on different aspects of the language, targets, and goals. Working on one thing does not necessarily translate to a talent deficit elsewhere in the product.

1 Like

Yes I’ve heard this all too often. Unfortunately since the xojo team is so small this translates to one person per section. So without going too far the people in charge of the web version, have to do documentation, fix bugs, develop new features etc all by themselves. You understand that the time is getting longer and the confusion behind the product is growing. Before thinking about Android, we need to fix 2.0. Unfortunately we develop apps that must be reliable and stable. Obviously I’ve only done porting tests and I’m not thinking at all about going from 1.0 to 2.0. I will have opened at least 5/6 feedbacks and then I didn’t go any further with testing.

3 Likes

I try to avoid speculation, so there really isn’t much I can reply to here. I can say that all of this has been said before many times, and the team is, I’m sure, aware of the concerns.

1 Like

Don’t worry I don’t want to create unnecessary controversy or ask you for confidential information. I just hope that web 2.0 is going in the right direction :wink:

1 Like

But you can subclass the basic WebLabel class and add your own styling logic, which can be reused anywhere in your app for uniform headings, as an example.

Indeed. That is what I referred to as superficial styling adjustments. But I get your point that there is some flexibility, and I agree with it.

Does this apply a different CSS class to the control? If so, you could do all the styling in bootstrap.

No, but you can do that with JavaScript:

Sub Opening() Handles Opening
  me.ExecuteJavaScript( "$('#" + me.ControlID + "').addClass('card');" )
End Sub
2 Likes

This is a very useful piece of knowledge I was missing. Thank you!

Now, I am somewhat worried that this kind of implicit knowledge is now required to take full advantage of Web 2.0. This is in large part what has kept Linux from being more widely adopted on the desktop. What does it mean for Xojo?

For all which are complaining about the dropped WebStyle functionality (like I do).
We made a litte test project and implemented a subclass of webstyle (webstyle_extended).

With this and with CSS you should be able to reproduce nearly all of the old webstyle functions. Only without the inbuilt webstyle editor (which we never used unless for basic design-time related styling).

The converter is not perfect (we stopped working on it after we noticed that web 2.0 lacks basic functionality and events, which we rely on). But the styling-stuff is easy to use and nearly feature complete.
If you subclass the standard controls of xojo (like webbutton, weblistbox, etc.) then you’ll also be able to have an webstyle selection box in the inspector.

Contributions welcome:

2 Likes

ok, today I got the demonstration that the support for the 2019R3.2 release issues or cases is dead. Case 63343 - webContainer.lostfocus not work / raise, immediately closed from the support with the reason “WebContainer.LostFocus no longer exists.”

I’m not surprised. The post from @Geoff_Perlman on the Xojo blog that was linked earlier in this topic (and your many others) clearly says:

Having said that, should you discover that your app is failing in some way due to an OS or web browser update, please contact us and we will do what we can do resolve the issue.

This likely isn’t an issue that was caused by an OS or browser update, rather a bug in Xojo’s Web 1.0. There were a few of these at the time Web 1.0 was deprecated.

As was suggested by @Tim_Parnell in one of your other threads, your best bet is to reach out to hello@xojo.com.

1 Like

ok also hello@xojo.com replied me that nothing can be done about it …
so web 1.0 and its support is dead and buried

3 Likes

Thats nothing new. They always stated out, that you can go with 2019 R3.2 “until you’re ready to transfer your Web 1 to Web 2”, but there will be definitely no changes made to the old framework in the future.

(Unless something breaks due to changes in the OSs or Browsers, but how long this “support” lasts is not known.)

That is so, because the underlying web framework classes in the IDE are overwritten by the new web framework. The old framework simply doesn’t exist in the current IDE anymore.

That is ■■■■, it offended the community very much, but it is what it is and we’ll have to deal with it. And you’ll have to get comfortable with the bugs, they stick forever from now on.