Berkelium HowTo

xadh00m

26-03-2010 10:30:45

Hi,

How is the Berkelium plugin meant to be used?

I do the following:
- get berkelium.zip from google code
- compile MyGUI (from trunk in release) linking to berkelium
- copy over the ogre files
- copy over the berkelium bin folder content
- start LayoutEditor
- create a berkelium widget (it is shown white)
- set URL to e.g. "www.google.de";
- >Test -> the widget stays white and does not show up any content...

Whats wrong here?

Thanks,
xad

Altren

26-03-2010 12:36:55

Try http://www.google.de.

xadh00m

27-03-2010 22:42:15

Altren,

Using this URL did not change anything. There is no error/warning in ogre.log and nothing at all in chrome.log.
I´m not sure if this has something to do with my problem but the berkelium guys updated the berkelium.zip file a few days ago (to the one I use now).

Anyway, if you are sure that my way is correct to get berkelium running I´m going to checkout the application on another station, too. My laptop here is the (only) one with the strange errors in layout editor I mentioned some weeks ago.

Thank you for your support!

xad

my.name

28-03-2010 02:36:52

http://www.ogre3d.org/forums/viewtopic. ... 4&start=25
copy wow_helper.exe to bin

cass

28-03-2010 14:55:55

Hi

I am also stuck with the same problem as xadh00m. I also see just a white box no matter which URL I choose. I am using Windows XP and also downloaded the wow_helper as suggested by Altren.

Did any one got the Berkelium plugin to work correctly?

xadh00m

28-03-2010 22:33:47

http://www.ogre3d.org/forums/viewtopic.php?f=11&t=54484&start=25
copy wow_helper.exe to bin

Everything is copied into the bin folder still I only see a white panel :-(

xadh00m

29-03-2010 22:55:27

Altren,

Could you please confirm that the approach to use Berkelium works for you with the current trunk and the recent berkelium version. I currently don´t know where to look for this particular problem.

xad

Altren

31-03-2010 16:55:23

It works with latest berkelium binaries. Check that you have wow_helper.exe near executable.

cass

02-04-2010 08:40:08

I have copied the entire Berkelium/bin directory's contents into the my-gui/bin/release (including the wow_helper.exe). I would then expect the LayoutEditor to at least show a webpage in the Berkelium plugin-widget (with the URL set to (http://www.google.com). Is the LayoutEditor faulty or did I misunderstood how to use it.

cass

02-04-2010 11:26:09

I finally got my Berkelium plugin to work in MyGUI!

What I did:
  1. I updated to the very latest SVN branch of MyGUI.[/*:m]
  2. I also noticed that my berkelium.exe file was missing.[/*:m]
  3. Also there are no indication that the webpage is busy loading. If you wait long enough the white box in the layout editor turns into a webpage.[/*:m][/list:u]

cass

02-04-2010 12:55:25

Is it possible to modify the Berkelium widget so that if one set the position to IntCoord() and the setSizePolicy(MyGUI::SizePolicy::Content) that it will automatically fill the maximum space allowed by the parent widget, like the ScrollView widget?

Altren

02-04-2010 13:00:55

You should set Align::Stretch for that.

cass

05-04-2010 16:34:01

I did.


WidgetPtr berkelium = window->createWidgetT("BerkeliumWidget", "Canvas", IntCoord(), MyGUI::Align::Stretch);
berkelium->setProperty("Berkelium_SourceURL", url);
berkelium->setNeedKeyFocus(true);

my.name

06-04-2010 09:25:33

WidgetPtr berkelium = window->createWidgetT("BerkeliumWidget", "Canvas", IntCoord(0, 0, window->getClientCoord().width, window->getClientCoord().height), MyGUI::Align::Stretch);
dont use setSizePolicy

Altren

06-04-2010 10:23:27

It's not ready yet, still WIP. Also you can do that next way while SizePolicy is partially not ready:
WidgetPtr berkelium = window->createWidgetRealT("BerkeliumWidget", "Canvas", FloatCoord(0, 0, 1, 1), MyGUI::Align::Stretch);
createWidgetRealT used for creating widget with relative position and size.

xadh00m

06-04-2010 13:06:03

Ok, eventually Berkelium works here, too. I didn´t know that I need the berkelium.exe file, too.

Unfortunately I encounter a serious crash when using the BerkeliumWidget in the layoutManager.

What have I done:
- in test mode
- loaded google page
- typed a name
- tried to mark the name with the mouse (holding LMB down moving over the word)

What happens:
- it doesn´t highlight the letter at all
- after a few tries it crashes badly with an internal error

I don´t know why but it seems I lost the device as mentioned in the log:
14:26:17: D3D9 device: 0x[0006C2E0] lost. Releasing D3D9 texture: 0B7D2960_Canvas
14:26:17: Released D3D9 texture: 0B7D2960_Canvas
14:26:17: D3D9 : WARNING - disabling VSync in windowed mode can cause timing issues at lower frame rates, turn VSync on if you observe this problem.
14:26:18: !!! Direct3D Device successfully restored.
14:26:18: D3D9 device: 0x[0006C2E0] was reset
14:26:18: D3D9 device: 0x[0006C2E0] lost. Releasing D3D9 texture: 0B7D2960_Canvas
14:26:18: Released D3D9 texture: 0B7D2960_Canvas
14:26:18: D3D9 : WARNING - disabling VSync in windowed mode can cause timing issues at lower frame rates, turn VSync on if you observe this problem.
14:26:19: !!! Direct3D Device successfully restored.
14:26:19: D3D9 device: 0x[0006C2E0] was reset
14:26:19: OGRE EXCEPTION(7:InternalErrorException): Cannot begin frame - no viewport selected. in D3D9RenderSystem::_beginFrame at ..\..\..\..\..\RenderSystems\Direct3D9\src\OgreD3D9RenderSystem.cpp (line 2813)


xad

Brocan

31-05-2010 12:18:10

Hi,

I have a small problem with berkelium. If I run berkelium.exe i've been able to logging into all web pages that use cookies, if I use the BerkeliumWidget i can't logging in any web page (gmail, forums, etc...), i get again and again to the login web page. What's the problem? Any kind of cookie problems?

Thanks in advance!

Brocan

11-06-2010 21:31:31

Hi,

I have a small problem with berkelium. If I run berkelium.exe i've been able to logging into all web pages that use cookies, if I use the BerkeliumWidget i can't logging in any web page (gmail, forums, etc...), i get again and again to the login web page. What's the problem? Any kind of cookie problems?

Thanks in advance!


Well, this problem seems to be related with berkelium, not with MyGUI :D

Nesetalis

10-08-2010 07:12:53

Seems like the thread to ask under.

How would I go about capturing keyboard input for berkelium?
I want to, at the very least, be able to use forward and backward keystrokes.

Brocan

10-08-2010 07:57:38

The last version of Berkelium (August compilation) have major changes in their api, and in the way that they retrieves the update images. This patch updates the PluginBerkelium to make it compatible with the last berkelium version.

Index: BerkeliumWidget.cpp
===================================================================
--- BerkeliumWidget.cpp (revision 3216)
+++ BerkeliumWidget.cpp (working copy)
@@ -26,7 +26,8 @@
createTexture(mOldWidth, mOldHeight, TRM_PT_VIEW_REQUESTED);
requestUpdateCanvas = newDelegate(this, &BerkeliumWidget::notifyUpdateCanvas);

- mWindow = Berkelium::Window::create();
+ Berkelium::Context *context = Berkelium::Context::create();
+ mWindow = Berkelium::Window::create(context);

updateSize();

@@ -96,13 +97,25 @@
else Base::setProperty(_key, _value);
}

- void BerkeliumWidget::onPaint(Berkelium::Window *win, const unsigned char *sourceBuffer, const Berkelium::Rect &rect, int dx, int dy, const Berkelium::Rect &scrollRect)
+ void BerkeliumWidget::onPaint(Berkelium::Window *win,
+ const unsigned char *sourceBuffer,
+ const Berkelium::Rect &sourceBufferRect,
+ size_t numCopyRects,
+ const Berkelium::Rect *copyRects,
+ int dx, int dy,
+ const Berkelium::Rect &scrollRect)
{
if (mWindow == nullptr)
return;
-
+
mBuffer.scroll(dx, dy, scrollRect.left(), scrollRect.top(), scrollRect.width(), scrollRect.height());
- mBuffer.update((void*)sourceBuffer, rect.left(), rect.top(), rect.width(), rect.height());
+
+ for(size_t i = 0; i < numCopyRects; i++)
+ {
+ const Berkelium::Rect &updateRect = copyRects[i];
+ mBuffer.update((void*)sourceBuffer, updateRect.left(), updateRect.top(), updateRect.width(), updateRect.height(),
+ updateRect.left() - sourceBufferRect.left(), updateRect.top() - sourceBufferRect.top(), sourceBufferRect.width());
+ }
}

void BerkeliumWidget::notifyFrameStart(float _time)
Index: BerkeliumWidget.h
===================================================================
--- BerkeliumWidget.h (revision 3216)
+++ BerkeliumWidget.h (working copy)
@@ -12,6 +12,7 @@
#include <berkelium/Berkelium.hpp>
#include <berkelium/Window.hpp>
#include <berkelium/WindowDelegate.hpp>
+#include <berkelium/WeakString.hpp>

namespace MyGUI
{
@@ -34,28 +35,65 @@

private:
// from WindowDelegate
- virtual void onAddressBarChanged(Berkelium::Window *win, const char* newURL, size_t newURLSize) { }
+ virtual void onAddressBarChanged(Berkelium::Window *win, Berkelium::URLString newURL) {}
+ virtual void onStartLoading(Berkelium::Window *win, Berkelium::URLString newURL) {}
+ virtual void onLoad(Berkelium::Window *win) {}
+ virtual void onCrashedWorker(Berkelium::Window *win) {}
+ virtual void onCrashedPlugin(Berkelium::Window *win, Berkelium::WideString pluginName) {}
+ virtual void onProvisionalLoadError(Berkelium::Window *win, Berkelium::URLString url,
+ int errorCode, bool isMainFrame) {}
+ virtual void onConsoleMessage(Berkelium::Window *win, Berkelium::WideString message,
+ Berkelium::WideString sourceId, int line_no) {}
+ virtual void onScriptAlert(Berkelium::Window *win, Berkelium::WideString message,
+ Berkelium::WideString defaultValue, Berkelium::URLString url,
+ int flags, bool &success, Berkelium::WideString &value) {}
+ virtual void freeLastScriptAlert(Berkelium::WideString lastValue) {}
+ virtual void onNavigationRequested(Berkelium::Window *win, Berkelium::URLString newUrl,
+ Berkelium::URLString referrer, bool isNewWindow,
+ bool &cancelDefaultAction) {}
+ virtual void onTitleChanged(Berkelium::Window *win, Berkelium::WideString title) {}
+ virtual void onTooltipChanged(Berkelium::Window *win, Berkelium::WideString text) {}
+ virtual void onCrashed(Berkelium::Window *win) {}
+ virtual void onUnresponsive(Berkelium::Window *win) {}
+ virtual void onResponsive(Berkelium::Window *win) {}
+ virtual void onExternalHost(Berkelium::Window *win,
+ Berkelium::WideString message,
+ Berkelium::URLString origin,
+ Berkelium::URLString target) {}
+ virtual void onCreatedWindow(Berkelium::Window *win, Berkelium::Window *newWindow,
+ const Berkelium::Rect &initialRect) {}

- virtual void onStartLoading(Berkelium::Window *win, const char *newURL, size_t newURLSize) { }
- virtual void onLoad(Berkelium::Window *win) { }
- virtual void onLoadError(Berkelium::Window *win, const char* error, size_t errorLength) { }
+ virtual void onPaint(Berkelium::Window *win,
+ const unsigned char *sourceBuffer,
+ const Berkelium::Rect &sourceBufferRect,
+ size_t numCopyRects,
+ const Berkelium::Rect *copyRects,
+ int dx, int dy,
+ const Berkelium::Rect &scrollRect);

- virtual void onBeforeUnload(Berkelium::Window *win, bool *proceed) { }
- virtual void onCancelUnload(Berkelium::Window *win) { }
+
+ virtual void onWidgetCreated(Berkelium::Window *win, Berkelium::Widget *newWidget, int zIndex) {}
+ virtual void onWidgetDestroyed(Berkelium::Window *win, Berkelium::Widget *wid) {}
+ virtual void onWidgetResize(Berkelium::Window *win,
+ Berkelium::Widget *wid,
+ int newWidth,
+ int newHeight) {}
+ virtual void onWidgetMove( Berkelium::Window *win,
+ Berkelium::Widget *wid,
+ int newX,
+ int newY) {}
+ virtual void onWidgetPaint( Berkelium::Window *win,
+ Berkelium::Widget *wid,
+ const unsigned char *sourceBuffer,
+ const Berkelium::Rect &sourceBufferRect,
+ size_t numCopyRects,
+ const Berkelium::Rect *copyRects,
+ int dx, int dy,
+ const Berkelium::Rect &scrollRect) {}
+ virtual void onCursorUpdated(Berkelium::Window *win, const Berkelium::Cursor& newCursor) {}
+ virtual void onShowContextMenu(Berkelium::Window *win,
+ const Berkelium::ContextMenuEventArgs& args) {}

- virtual void onCrashed(Berkelium::Window *win) { }
- virtual void onUnresponsive(Berkelium::Window *win) { }
- virtual void onResponsive(Berkelium::Window *win) { }
- virtual void onChromeSend(Berkelium::Window *win, Berkelium::WindowDelegate::Data message, const Berkelium::WindowDelegate::Data* content, size_t numContents) { }
- virtual void onCreatedWindow(Berkelium::Window *win, Berkelium::Window *newWindow) { }
- virtual void onPaint(Berkelium::Window *win, const unsigned char *sourceBuffer, const Berkelium::Rect &rect, int dx, int dy, const Berkelium::Rect &scrollRect);
-
- virtual void onWidgetCreated(Berkelium::Window *win, Berkelium::Widget *newWidget, int zIndex) { }
- virtual void onWidgetDestroyed(Berkelium::Window *win, Berkelium::Widget *newWidget) { }
- virtual void onWidgetResize(Berkelium::Window *win, Berkelium::Widget *wid, int newWidth, int newHeight) { }
- virtual void onWidgetMove(Berkelium::Window *win, Berkelium::Widget *wid, int newX, int newY) { }
- virtual void onWidgetPaint(Berkelium::Window *win, Berkelium::Widget *wid, const unsigned char *sourceBuffer, const Berkelium::Rect &rect, int dx, int dy, const Berkelium::Rect &scrollRect) { }
-
protected:
virtual void initialiseWidgetSkin(ResourceSkin* _info);
virtual void shutdownWidgetSkin();
Index: Buffer.h
===================================================================
--- Buffer.h (revision 3216)
+++ Buffer.h (working copy)
@@ -239,19 +239,20 @@
}
}

- void update(void* _data, int _left, int _top, int _width, int _height)
+ void update(void* _data, int _left, int _top, int _width, int _height, int sourceLeft, int sourceTop, int sourceWidth)
{
mDirty = true;

byte* original_data = mBuffer;
byte* data = original_data + (((_top * mWidthVisible) + _left) * BIT_IN_COLOUR);
- byte* source = (byte*)_data;
+ byte* source = (byte*)_data + (((sourceTop * sourceWidth) + sourceLeft) * BIT_IN_COLOUR);;
int width_bytes_visible = mWidthVisible * BIT_IN_COLOUR;
- int width_bytes_dest = _width * BIT_IN_COLOUR;
+ int width_bytes_dest = sourceWidth * BIT_IN_COLOUR;
+ int width_bytes_copy = _width * BIT_IN_COLOUR;

for (int y=0; y<_height; ++y)
{
- memcpy(data, source, width_bytes_dest);
+ memcpy(data, source, width_bytes_copy);
data += width_bytes_visible;
source += width_bytes_dest;
}
Index: Plugin.cpp
===================================================================
--- Plugin.cpp (revision 3216)
+++ Plugin.cpp (working copy)
@@ -37,7 +37,7 @@
{
MYGUI_LOGGING(LogSection, Info, "initialize");

- Berkelium::init();
+ Berkelium::init(Berkelium::FileString::empty());

MyGUI::FactoryManager::getInstance().registerFactory<MyGUI::BerkeliumWidget>("Widget");
MyGUI::Gui::getInstance().eventFrameStart += MyGUI::newDelegate(this, &Plugin::update);


The August version can be downloaded from here: http://github.com/sirikata/berkelium/downloads

Thanks to Patrick Horn for his amazing work with berkelium. :D

AshMcConnell

10-08-2010 08:47:34

Fantastic Brocan, thanks for the update! Hopefully i'll be able to swap out Awesomium for Berkelium as I really can't afford the license for Awesomium due to my budget being roughly £0 :)

Thanks!
Ash

AshMcConnell

12-08-2010 09:03:51

Am I doing something really stupid...

I am trying to use the Berkelium Widget in my project. I am including "BerkeliumWidget.h" and linking to Plugin_BerkeliumWidget.lib but I still get a linker error: -

1>MenuSystem.lib(BrowserControls.obj) : error LNK2019: unresolved external symbol "public: void __thiscall MyGUI::BerkeliumWidget::loadURL(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?loadURL@BerkeliumWidget@MyGUI@@QAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) referenced in function "private: void __thiscall Sirocco::BrowserControls::receiveData(class boost::shared_ptr<class Sirocco::EventMessage>)" (?receiveData@BrowserControls@Sirocco@@AAEXV?$shared_ptr@VEventMessage@Sirocco@@@boost@@@Z)
1>E:\Workspace\trunk\Sirocco\main\code\SiroccoVS2005\Release\Orc.exe : fatal error LNK1120: 1 unresolved externals


Any ideas what could be wrong?

Thanks!
Ash

AshMcConnell

12-08-2010 10:47:43

It links when I use _berkelium->setProperty("Berkelium_SourceURL", esm->data); rather the loadURL

But then I get a MyGUI exception: -

"factory 'BerkeliumWidget' not found"

It doesn't seem to be picking up the BerkeliumWidget class properly at all. I am using the latest SVN, is there perhaps a problem with it? I did have to manually apply the changes from the patch for some reason. TortoiseSVN wouldn't use the patch file from above.


Thanks for your help
All the best,
Ash

AshMcConnell

13-08-2010 10:46:07

Hi Folks,

I realised I had to load the plugin manually at startup in order for the BerkeliumWidget factory to be registered. However, it just shows a white control at the minute when I set the Berkelium_SourceURL property.

Brocan, should the loadURL method be available? I can't get it to link if I try to use loadURL. Any ideas why?

I'd really like to use Berkelium, but I just can't quite get it working.

Thanks for your help
All the best,
Ash

Brocan

13-08-2010 15:20:37

Hi Ash,

I don't use loadURL never, i always use setProperty to deal with it.

It's possible that tortoise doesn't apply the patch because the trunk version i used maybe updated after I checkout it.

Are you initializing properly the berkelium widget? remember that you need to register the factory manually in MyGUI before create the widget.

The blank problem is extrange, are you sure that mygui is calling the funcion "onPaint" which is in the Plugin_BerkeliumWidget? If you are doing extrange thinks, such as render to texture with the browser, you need to realize that, at least in old versions, the berkelium widget doesn't inform correctly that is dirty to redraw it... maybe something like this can be your problem...


See you! :D

AshMcConnell

13-08-2010 15:48:13

Hi Brocan,

Thanks for your help!

Hi Ash,

I don't use loadURL never, i always use setProperty to deal with it.



Ah great, at least that's the same. I don't understand why setProperty works and loadURL doesn't though.


Are you initializing properly the berkelium widget? remember that you need to register the factory manually in MyGUI before create the widget.


I think so, here is my code
_platform = SPTR<MyGUI::OgrePlatform>(new MyGUI::OgrePlatform());
_platform->initialise(ogreRenderObjectsGetter->getRenderWindow(), ogreRenderObjectsGetter->getSceneManager(), "Default");
_gui = SPTR<MyGUI::Gui>(new MyGUI::Gui());
_gui->initialise();
MyGUI::PluginManager::getInstance().loadPlugin("Plugin_BerkeliumWidget.dll");


Is there anything else I need to do? It is done right at the start before any layouts are loaded.


The blank problem is extrange, are you sure that mygui is calling the funcion "onPaint" which is in the Plugin_BerkeliumWidget? If you are doing extrange thinks, such as render to texture with the browser, you need to realize that, at least in old versions, the berkelium widget doesn't inform correctly that is dirty to redraw it... maybe something like this can be your problem...


I'm just trying to use it as a normal 2d browser rather than rendering it to texture to use somewhere else. Nothing fancy for the moment :)

If you think of any other reasons it may not work, please let me know :)

Thanks for your help
All the best,
Ash

AshMcConnell

16-08-2010 13:38:55

Aha! Found the problem. berkelium.exe needs to be in the application's directory. It must be used to do the actual HTTP stuff.

I have a problem though. The mouse works correctly, but there is no keyboard interaction at all. Any ideas why that would be? The keyboard is working fine with the other MyGUI controls.

All the best,
Ash

*EDIT* I have tried it in the LayoutEditor and it also doesn't have any keyboard interaction.

AshMcConnell

18-08-2010 17:48:56

Just in case someone is googling for this thread at a later point, I solved the problem by setting NeedKey to true

xadh00m

18-08-2010 23:10:22

Thanks, Ash!

I´m currently checking if Berkelium is (already) a sufficient alternative for Awesomium. Do you encounter any significant drawbacks with the recent Berkelium version compared to Awesomium using MyGUI?

xad

AshMcConnell

19-08-2010 08:44:57

Hi Xad,

It is lacking a couple of things for me at the moment.

- I don't think there is any way to supply a proxy server, some people can't get online without it, particularly in workplaces and colleges / universities.
- There isn't a way to supply header information. This would allow me to automatically log people into the game's website.

Perhaps I am missing an option to do these things, but I can't see anything in the API that would allow it.

There is another issue with initialisation. With Brocan's (great!) patch, he supplies an empty directory for chrome data, but it would be better if this could be specified somehow. I'm not sure how this can be done, can you specify arguments when loading a plugin?

All the best,
Ash

Brocan

23-08-2010 08:25:32

Hello Ash!

Sorry for the response delay, i'm glad to see that you have resolved the problems :D

About the home directory, when you initialise berkelium ("Berkelium::init(Berkelium::FileString::empty());"), i pass a empty string because i don't need the home directory, however if you need to change it, changing the empty string to other one should use it as home directory as the function says:

static void Berkelium::init(Berkelium::FileString &homeDirectory);

AshMcConnell

23-08-2010 09:47:42

Hey Brocan,

Thanks, yep I noticed that the home directory could be supplied in the init function. I could change it manually, but it would be nice if there was a way to supply the home directory as a string to the plugin so anyone could set the directory easily.

All the best,
Ash

vindoctor2

29-08-2010 04:25:33

Using MyGUI

I've noticed a few issues doing a proof of concept. First off, I noticed I had to cast the widget to the BerkeliumWidget to have the proper property method get called (This is not proper, but I wanted to do a POC). I have yet to figure out why, but this might be why the person above is having issues. At least I was able to continue my POC after figure why my short term hack is working, where as the my gui framework should have this pointing in through the base into BerkeliumWidget.... its probably a virtual function issue.

MyGUI::Widget* widget = MyGUI::Gui::getInstance().createWidgetT("BerkeliumWidget", "Canvas", MyGUI::IntCoord(10,10, view.width-20, view.height-20), MyGUI::Align::Stretch, "Main");

MyGUI::BerkeliumWidget *ww = widget->castType<MyGUI::BerkeliumWidget>();
ww->setProperty("Berkelium_SourceURL", std::string("http://google.com";));
ww->setNeedKeyFocus(true);

So all worked great!

But now I wanted to validate things still work with the latest berkelium. So I applied the patches I saw around here to the MyGui pluggin, and sadly, now I get a black screen..nothing else. Maybe the patch here is outdated with the mygui pluggin dll.. I wish the person would have submitted his/her update over to the myGui so they could have kept that up to date.. Anyways, I'm hoping someone here can save me some time... i'm using the mygui svn trunk, the latest berkelium, released in August. Does anybody have this working? NOTE! I had to apply the changes manually since the svn patch posted for some reason complains about line 48... and yes, I'm 99% sure I applied properly, and manually merged properly.


Thanks!

vindoctor2

29-08-2010 19:42:58

ok.. so I found the widget property issues. You need to change the virtual function setProperty to setPropertyOverride. myGui changed the widget behavior but never updated the pluggins from what i can see.

void BerkeliumWidget::setPropertyOverride(const std::string& _key, const std::string& _value)
{
if (_key == "Berkelium_SourceURL") loadURL(_value);
else Base::setPropertyOverride(_key, _value);
}

Altren

29-08-2010 21:39:36

Thx for that, right, we missed plugin.

vindoctor2

30-08-2010 02:04:18

I got it all working. I posted some code over in the patches section of Mygui. The property inside the widget just needs to change to SourceURL. All will work once that is done.

Kukanani

15-09-2010 03:00:00

I am having two problems with the BerkeliumWidget:

1) if I scroll the window it becomes very odd-looking (kind of "stutter," the buffer is not being fully re-drawn I think).

2) I would like the background of the widget (webpage) to be transparent. I noticed that the Berkelium::Window class has an option for this but I can't figure out just how to get it to work in MyGUI.

Brocan

05-10-2010 12:45:16

1) if I scroll the window it becomes very odd-looking (kind of "stutter," the buffer is not being fully re-drawn I think).

MyGUI Berkelium plugin doesn't work with the August berkelium version. The scroll is break. I posted a patch a few pages before that solves the scroll problem, but I don't know if mygui devs patch the berkelium widget in the trunk.

2) I would like the background of the widget (webpage) to be transparent. I noticed that the Berkelium::Window class has an option for this but I can't figure out just how to get it to work in MyGUI.

Just use BerkeliumWidget::setAlpha