Table of contents
Introduction
I am Vaibhav Malik, a Google Summer Of Code contributor and developer at Inkscape. In this blog, I've summarized my work during the eleventh week of the Google Summer Of Code 2023.
Aug 07
The week began with my endeavours to prepare the Text toolbar for the transition to GTK+4.
Aug 08 to Aug 09
Having completed the preparation of the text toolbar for the GTK+4 port, I subsequently moved on to addressing the Pen and Pencil toolbars for the same transition. These particular toolbars held a unique significance due to their shared widgets and their definition within the PencilToolbar class.
Aug 10
After concluding the preparation for the tool toolbars' port, I proceeded to port the commands toolbar. The commands toolbar represented the final occurrence of the Gtk::Toolbar class (deprecated in GTK+4) within the src/ui/toolbar/ directory. Upon completing the preparation of the Commands toolbar for the GTK+4 port, there were no remaining instances of the Gtk::Toolbar class being utilized in the codebase.
Aug 11
Subsequently, I reached out to fellow developers, seeking their review of the extensive merge request I had submitted. Daniel Boles, PBS and Mikekov took the initiative and proposed noteworthy enhancements, such as converting pointer types to reference types wherever feasible, to minimize the risk of encountering null pointer-related crashes. They also advised the utilization of function pointers as a means to integrate the Don't Repeat Yourself (DRY) principle. Mikekov also brought to light issues with the toolbar resize mechanism, noting that the window was not properly resizing downward. Additionally, the toolbar widgets occasionally exhibited overlapping when reattached to the toolbar container. Tav also reported a crash in the Text Toolbar, likely stemming from the recent porting process.
I gave priority to resolving the crash and managed to rectify it without difficulty.
Then, I initiated the implementation of the suggested improvements by addressing the pointer types and transitioning them to reference types.
Conclusion
That's all for the eleventh week of Google Summer of Code 2023. During the upcoming week, I intend to dedicate my efforts to addressing the suggestions provided by my fellow developers, to enhance the code's robustness to the highest degree possible. Stay tuned for further updates. Thanks for reading. See you next week :)