Accéder au contenu principal

Adaptive GNOME Web

I started working on making GNOME Web work well on the Librem 5; to be sure it fits a phone's screen I want the windows to fit in a 360 points width, which is definitely small. To do so I started with the advices from Tobias Bernard to make Web have two modes that I named normal and narrow. The normal mode is Web as you know it, while the narrow mode moves all buttons from the header bar but the hamburger menu to a new action bar at the bottom, letting the windows reach yet unreachable widths.

Web autmatically adapting to small sizes.

And now, with device rotation on a tablet.

The code is overall ready, I still need to break it into reviewable bits before submitting it upstream.

Once this get merged:

  • we want to not show tabs in narrow mode and instead to display a popover listing the available pages,
  • we want to make the search bar shrink rather than to limit the minimum window size,
  • we consider migrating away from the application menu model.

A quick layout test of the pages popover.

P.S.: I forgot to give you a link to the unfinished code for you to play with. 😀


  1. This looks really good! Much better than I thought it would look when I read it was mobile and adaptive. I like that buttons are divided over the screen instead of being hidden. It feels akin to the more advanced UI's that were often used for the sadly forgotten PDA:s, where programs had a lot more functionality since they didn't need to accomodate giant buttons for giant fingers and small screens - not to mention having all functions visible on the screen at all times instead of hiding them beneath various random swipes, drags, etc.

    Would love it if those buttons had text under them and colorful icons though. Text so it's always obvious what each action does and in which menu to look for things and colorful icons since it's much easier to remember where to look when you have more things like color to go by. I work with helping people with various neurological impairments such as aphasia, and for most of them this would mean the whole difference of being able to use the app or not, even after loads of training. Having small things like that to "connect" your memory with is so very important, and single, grey glyphs is not enough.

  2. Hire Dedicated software developers, designers and digital marketers at Apptians Staffing. We are the best staffing company in Delhi and recruitment company in Delhi NCR. We provide dedicated react js developers, react native developers, android app developers, iOS app developers, hybrid app developers, PHP developers, UI designers, UX designers, SEO and SMM experts in the industry. You can even outsource your project to us and we will deploy a dedicated team for you and for your projects.

    We are on top of Google search with the below keywords: freelance software developer hire freelance software developer, hire software developer freelance, hire dedicated development team, hire ios developer, hire freelance ios developer, hire dedicated ios developer, hire dedicated ios developers, hire dedicated ios app developers, hire ios app developer, staffing company in Delhi, recruitment company in Delhi, recruitment consultants in Delhi, recruitment agencies in Delhi, best recruitment agencies in Delhi, recruitment agencies in Delhi NCR, hire dedicated development team, best recruitment agencies in Delhi NCR, hire reactjs developers.

  3. What an informative topic that was! But I would like to help you and shed more light on the topic. I would like to recommend a company that provides reliable and flexible online pharmacy app development solutions as per different business requirements. Alteza, a leading company that provides readymade and custom solutions for different pharmacy business ideas

  4. Thanks for sharing your experience working on making GNOME Web work with some live practical video. If you have any requirement to develop an IOS app. Please visit us to Hire Swift Developers. from us and develop your desired IOS app as per your requirement in an affordable app development cost.


Enregistrer un commentaire

Posts les plus consultés de ce blog

libhandy 0.0.10

libhandy 0.0.10 just got released, and it comes with a few new adaptive widgets for your GTK app. You can get this new version here . The View Switcher GNOME applications typically use a GtkStackSwitcher to switch between their views. This design works fine on a desktop, but not so well on really narrow devices like mobile phones, so Tobias Bernard designed a more modern and adaptive replacement — now available in libhandy as the HdyViewSwitcher . In many ways, the HdyViewSwitcher functions very similarly to a GtkStackSwitcher : you assign it a GtkStack containing your application's pages, and it will display a row of side-by-side, homogeneously-sized buttons, each representing a page. It differs in that it can display both the title and the icon of your pages, and that the layout of the buttons automatically adapts to a narrower version, depending on the available width. We have also added a view switcher bar, designed to be used at he bottom of the window: HdyView

Moving the Blog

I am moving this blog to greener lands: . The existing articles will remain here on Blogger, and new articles will land on the Plume instance.

GTK+ Apps on Phones

As some of you may already know, I recently joined Purism to help developing GTK+ apps for the upcoming Librem 5 phone . Purism and GNOME share a lot of ideas and values, so the GNOME HIG and GNOME apps are what we will focus on primarily: we will do all we can to not fork nor to reinvent the wheel but to help allowing existing GTK+ applications to work on phones. How Fit are Existing GTK+ Apps? Phones are very different from laptops and even tablets: their screen is very small and their main input method is a single thumb on a touchscreen. Luckily, many GNOME applications are touch-friendly and are fit for small screens. Many applications present you a tree of information you can browse and I see two main layouts used by for GNOME applications to let you navigate it. A first kind of layout is found in applications like Documents, I'll call it stack UI : it uses all the available space to display the collection of information sources (in that case, documents), clicking a