Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2018-04

Dark themed lazarus

10 messages · 5 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Anthony Walter

I finally got an acceptable darked themed version of Lazarus setup.

http://cache.getlazarus.org/images/lazarus-dark.png

Running Linux Cinnamon
Theme is named Arc Darkest
Maxmimus extension added to remove titlebars
Code editor colors mostly ripped from VS Code

Btw, if anyone runs Linux Gtk2 Lazarus, please let me know if feel you the Object Inspector grid is laggy (actually hits the CPU at 50% on my 2.6 GHz Core2Duo) when mouse dragging through properties. I wrote a fix that reduces the amount of work it does when redrawing items, but since the OI doesn't seem laggy on Windows/Mac/Qt, I hesitate to submit my patch. -------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20180405/dcce0e4c/attachment.html>

Reply by email

Mattias Gaertner
to Anthony Walter: I finally got an acceptable darked themed version of Lazarus setup.…
Show quoted text 14 lines
I finally got an acceptable darked themed version of Lazarus setup. http://cache.getlazarus.org/images/lazarus-dark.png Running Linux Cinnamon Theme is named Arc Darkest Maxmimus extension added to remove titlebars Code editor colors mostly ripped from VS Code Btw, if anyone runs Linux Gtk2 Lazarus, please let me know if feel you the Object Inspector grid is laggy (actually hits the CPU at 50% on my 2.6 GHz Core2Duo) when mouse dragging through properties. I wrote a fix that reduces the amount of work it does when redrawing items, but since the OI doesn't seem laggy on Windows/Mac/Qt, I hesitate to submit my patch.

Can you give more details about the gtk2 patch?

Mattias

Reply by email

Anthony Walter
to Mattias Gaertner

About the patch, I am still making some changes, but what I've done is the this. Currently the object inspector draws every row even if it doesn't need redrawing. I modified the SetItemIndex method to InvalidateRect the OldIndex and NewIndex, then only redraw those two rows in DoPaint. I added a public Fast property for testing so that you can toggle between the old behavior and new behavior at runtime, allowing users to measure the difference both in responsiveness and CPU usage.

So far with this change if you click, hold down the mouse, and drag up/down quickly in the inspector the lag seems greatly reduced, as well as less CPU usage. I have not testing how this effects Windows/Qt/Mac yet, but as I said in my OP those platforms/widget sets did not suffer from the same laggy like behavior. Either way, shortly I'll submit it with a patch, a stand alone example testing program, and let others try it for themselves.

Next I might tackle the lagginess in drag moving controls on the form designer. Does that seem like a laggy problem to anyone else? -------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20180405/6d28b393/attachment.html>

Reply by email

Maciej Izak
to Anthony Walter

2018-04-05 12:16 GMT+02:00 Anthony Walter via Lazarus <

Show quoted text 5 lines
: Next I might tackle the lagginess in drag moving controls on the form designer. Does that seem like a laggy problem to anyone else?

Probably you mean : https://bugs.freepascal.org/view.php?id=33486

I was not able to spend enough time on this problem, so any patch is welcome.

Best regards, Maciej Izak -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20180405/d91a54bc/attachment.html>

Reply by email

Anthony Walter
to Maciej Izak

Maceij, I get the same lag both in the docked form designer and the normal form designer when it comes to dragging controls around the form. My idea is to create a bit, and not actually move the controls when you are dragging, but rather move or resize an overlay window previewing the new shape. Only when you release the mouse would it hide the overlay and reposition or resize the selected controls.

As a side enhancement, it would display information about the top, left, width, and height of the changes inside the overlay as you dragged. Also it might display the name and class of the control centered within the overlay. Does that sound reasonable?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20180405/6eeacfea/attachment.html>

Reply by email

Maciej Izak
to Anthony Walter

2018-04-05 12:33 GMT+02:00 Anthony Walter :

Show quoted text 5 lines
As a side enhancement, it would display information about the top, left, width, and height of the changes inside the overlay as you dragged. Also it might display the name and class of the control centered within the overlay. Does that sound reasonable?

Sure! Sorry for late reply, but somehow I overlooked your message. Good idea, this was also in my TODO but with low priority, so feel free to do this :).

Best regards, Maciej Izak -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20180411/d34708a8/attachment.html>

Reply by email

Juha Manninen
to Anthony Walter: About the patch, I am still making some changes, but what I've done is the this.…
Anthony Walter wrote
So far with this change if you click, hold down the mouse, and drag up/down quickly in the inspector the lag seems greatly reduced, as well as less CPU usage.

Do you mean to click on a property name in OI, then drag it on top of other property names?
I don't see any serious lag here on my Atom CPU mini-laptop with Linux
+ LCL-GTK2.
Besides, why would you drag the property names or values? OI does not support drag-n-drop between properties.
Shortly put: I cannot reproduce.

Either way, shortly I'll submit it with a patch, a stand alone example testing program, and let others try it for themselves.

Yes please.

Juha

Reply by email

Anthony Walter
to Juha Manninen

Juha, no I mean this, reflecting this, the old way the OI handled changes:

http://cache.getlazarus.org/videos/drag-inspector.mp4

The lag is visceral. Whenever an item index changes, the entire OI is invalidated. My change repaints 2 items, the previous row, and the new row. It's must faster.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20180411/8f4e0a3d/attachment.html>

Reply by email

Andreas Frieß
to Maciej Izak: 2018-04-05 12:16 GMT+02:00 Anthony Walter via Lazarus < Probably you mean :…
Maciej Izak wrote 8 lines
2018-04-05 12:16 GMT+02:00 Anthony Walter via Lazarus < >: > Next I might tackle the lagginess in drag moving controls on the > form designer. Does that seem like a laggy problem to anyone else? > Probably you mean : https://bugs.freepascal.org/view.php?id=33486

This Bugreport have not only to do with moving a component. Switching between code and design is the strangest lag.

Show quoted text 7 lines
I was not able to spend enough time on this problem, so any patch is welcome. -- Best regards, Maciej Izak

Andreas

Reply by email