Scripting the GUI with 'hey'

Blog post by humdinger on Sun, 2017-11-05 08:16

Haiku’s GUI is in principle entirely scriptable. You can change a window’s position and size and manipulate pretty much every widget in it. The tool to do this is hey. It sends BMessages to an application, thus emulating what happens if the user clicks on a menu, checkbox, or other widgets.

The seminal work on this application scripting is the BeOS Application Scripting chapter of the BeOS Bible by Chris Herborth. You should study that first and, if you’re like me, will keep coming back to it every time you think about solving something via hey.

Haiku monthly activity report - 10/2017

Blog post by PulkoMandy on Sat, 2017-11-04 20:26

Hey there! It's time for the monthly report!

This report covers hrev51465-hrev51517.

Packages

Not much changes on packages anymore since the plan is to switch to the new repos generated by the buildbots "real soon now" (but the repo is still missing some critical packages). However, some maintenance efforts are still done.

The "bc" command is now moved to a separate package instead of being part of Haiku.

Many packages were rebuilt and updated following ABI changes in BControlLook.

Back from GSoC mentor summit

Blog post by PulkoMandy on Mon, 2017-10-16 20:26

Hi there! This week-end was the Google Summer of Code mentor summit. This event gathers mentors from all organizations participating in GSoC and GCI for an event hosted by Google.

Usually the summit happens at the same time as BeGeistert, and as a result I never made it there before. But with no BeGeistert happening this year, I could finally make it.

Normally each organization is allowed to send 2 mentors, but we managed to get 6 people from Haiku to attend this year (by a combination of an extra mentor allowed because we do GCI, putting people on the waiting list and taking the slots freed by other orgs sending only one (or 0) mentor), having some Haiku people working at Google and helping run the event, and an hand-crafted badge to get into the event without registering)

Where is Haiku R1?

Blog post by kallisti5 on Mon, 2017-10-09 10:48

Haiku released R1 Alpha 4.1 on November 14th, 2012. (5 years ago next month).

Since our last release, we have seen a huge number of groundbreaking new features slip into the nightly code including package management.

Along with the addition of Package Management (which was added pretty shortly after R1A4), we were presented with the massive task of building “all the ports” into packages and maintaining their dependencies within our repositories.

Haiku monthly activity report - 09/2017

Blog post by PulkoMandy on Sat, 2017-10-07 20:26

I was kindly reminded over the IRC channel that it's time for the monthly report once again. So, there we go!

This report covers revision 51402 to 51464.

Graphics

Some efforts this month on the radeon_hd driver, as kallisti5 and jessicah have teamed up to identify remaining issues with displayport and started working towards multi-head support.

Kallisti5 also cleaned up the remote app_server as well as the HTML5 drawing backend (which should allow to have Haiku run remotely and render the user interface in a web browser).

Haiku monthly activity report - 08/2017

Blog post by PulkoMandy on Thu, 2017-09-07 20:26

Hi there, it's time for a new monthly report!

This report covers hrev31437-hrev51402

First of all, I have updated the git stats pages for haiku and haikuports. These provide an overview of the overall activity with various graphs, author ranking, etc.

Anyway, let's see what happened in Haiku this month. As you know, it was the 3rd month of the coding period, and several patches from our GSoC students were merged in (and there is more to come as we continue reviewing their work). You can already enjoy a faster TCP stack, several improvements to the locale kit, and partial write support for btrfs (do not use in production, still experimental).

[GSoC 2017] Calendar Application: Final Report

Blog post by AkshayAgarwal007 on Mon, 2017-08-28 11:55

Hello Everyone!

Google Summer of Code 2017 is off to an end and in this report I'll be summarizing the work done throughout the summer.

Introductory blog post

Source code: https://github.com/HaikuArchives/Calendar

List of all blog posts: https://www.haiku-os.org/blog/akshayagarwal007/

List of all Commits:
https://github.com/HaikuArchives/Calendar/commits/master
https://github.com/haiku/haiku/commits?author=AkshayAgarwal007

What has been completed

Calendar App

The Calendar app currently has the following features implemented:

  • Create, modify and delete events.
  • Generate notifications for events.
  • Display Day Calendar view.
  • Event categorization.
  • Set all day long events.
  • Fetching events from Google Calendar using Google Calendar API.
  • SQLite backend for storing events.
  • Setting preferences like 'First day of week', 'Display week number in Calendar'.
  • App localization: DateTime strings are localised and updates with locale preferences changes but GUI string still needs to be localised.

What's left to do (After GSoC)

  • Localizing the app's GUI strings
  • Implement month view
  • Fix adding/updating events to Google Calendar

There are many features that a Calendar app in the present world requires and all of it couldn't be completed in the summer. Apart from the 'future features' which I already mentioned in the proposal, throughout the course of the work I came across many features (based on discussions throughout the project and suggestions on my blog posts) which the app would require and I opened issues for the same in the repo so that they don't get lost.

[GSoC 2017] Porting Swift to Haiku - Final Report

Blog post by return0e on Mon, 2017-08-28 07:15

Hello everyone!

This blog-post marks the final report on bringing Swift to Haiku in the Google Summer of Code period. My introductory post on this project can be found here for a brief overview of the project.

Summary

In the last 3 coding periods, my contributions to Haiku’s LLVM and Clang ports plus reporting some bugs with the Haiku developers have made it possible for the Swift toolchain to be built on Haiku. With this, it opens the possibility to use cross-platform Swift libraries used on other platforms and also allows to directly use the libc/glibc libraries via the GlibC module. I have already done an initial port of Foundation and libdispatch on Haiku as specified in the previous blog-post, but they still need to be polished for general use. As for upstreaming my patches for Haiku support, I’ve sent my patches to apple/swift and they are currently under review.

[GSoC 2017] Preferences GUI Refactoring - Final Report

Blog post by anirudhm on Sun, 2017-08-27 17:36

Hello World.

This is Anirudh. Here’s my final overall report of my work during Google Summer of Code 2017. My sincere thanks to waddlesplash and Sean Healy, for their excellent mentorship. They immediately responded, and assisted me whenever I needed help. I’m grateful to the Haiku team, community members and my fellow GSoC colleagues for their help, constructive criticism, reporting bugs and helping the project shape better.

Link to the source code/repo: https://github.com/HaikuArchives/SuperPrefs

[GSoC 2017] Calendar Application: Weekly Report 7

Blog post by AkshayAgarwal007 on Sun, 2017-08-27 03:45

Hello Everyone!

In this post I would be focusing on the work done in the past two weeks.

I worked on Google Calendar integration and general improvements and bug fixes in the Calendar App. I also worked on implementing a relative datetime formatter and general enhancements/bug fixes involving the Haiku locale kit.

Calendar App

Fetching events using Google Calendar API and syncing with the database works now. There are issues with sending JSON data in an http post request, which always results in a parse error in the API response, as a result of which adding/updating events to Google Calendar doesn't work currently. I would be working to fix the same over the next few days. Deleting events from Google Calendar works fine.