patchFreeciv - Patches: patch #3936, In GTK2, fullscreen mode, menu bar...

Show feedback again

patch #3936: In GTK2, fullscreen mode, menu bar is not clickable at the very top

Submitted by:  Engla <englabenny>
Submitted on:  Fri Jun 7 13:11:25 2013  
Category: client-gtk-2.0Priority: 5 - Normal
Status: Ready For TestPrivacy: Public
Assigned to: NoneOpen/Closed: Open
Planned Release: Contains string changes: None

Add a New Comment (Rich MarkupRich Markup):

You are not logged in

Please log in, so followups can be emailed to you.


Tue Jun 11 16:18:02 2013, comment #2:

Third patch version!

User interface is now unchanged in windowed mode. I hope this makes it easier for us to apply this patch!

Some additional complexity:

  • Use one callback to toggle the etched in shadows of the scrolled window when the fullscreen state changes.
  • Use another callback to toggle the widget name of the menu bar so that it picks up the correct style properties for fullscreen mode (This is how GIMP handles their fullscreen mode transformation).
  • We need to capture the pointer to the GtkMenuBar widget, as only a widget name change on it itself will trigger a visible refresh of the style.

Applies to master and down to 2.3

(file #18081)

Engla <englabenny>
Project Member
Sat Jun 8 01:01:34 2013, comment #1:

Second patch version, with changes to ./data/freeciv.rc-2.0 to make sure it works the same way with any freeciv gtk theme.

We could attempt to only disable the shadows (borders) around the GtkScrolledWindow when in fullscreen. Is it worth it to try?

(file #18058)

Engla <englabenny>
Project Member
Fri Jun 7 13:11:25 2013, original submission:

It's much easier to use a menu bar (in fullscreen) if you can click the menu items when the pointer is on the edge of the screen.

This following screenshot demonstrates with the patch (left) and current freeciv (right), with the mouse pointer flush to the edge of the screen. The current freeciv needs you to click a few pixels below the top edge of the screen.

As an aside, GIMP 2.8 in fullscreen has the expected menu behavior where it is clickable on the edge of the screen.

The patch changes shadow type on two widgets (GtkViewport and GtkScrolledWindow) and the shadow type style variable on GtkMenuBar.

The patch applies identically to the gtk-2 client on 2.3, 2.4 and master. I have not yet attempted the gtk-3 client.

The patch depends on a tweak in the gtk theme so at the moment it will only work with the Freeciv (default) theme. Not sure if this is practical to work around.

Engla <englabenny>
Project Member


(Note: upload size limit is set to 1024 kB, after insertion of the required escape characters.)

Attach File(s):


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -unavailable- added by englabenny (Submitted the item)

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.


    Error: not logged in



    Follow 5 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Tue Jun 11 16:18:02 2013englabennyAttached File-=>Added 0001-gui-gtk-2.0-In-fullscreen-make-sure-the-menu-bar-tou.patch, #18081
      StatusNone=>Ready For Test
    Sat Jun 8 01:01:45 2013englabennyAttached File#18055=>Removed
    Sat Jun 8 01:01:34 2013englabennyAttached File-=>Added 0001-Make-sure-the-GTK-2-client-s-menu-bar-is-flush-to-th.patch, #18058
    Fri Jun 7 13:11:25 2013englabennyAttached File-=>Added menubar_flush_top_edge.diff, #18055
    Show feedback again

    Back to the top

    Powered by Savane 3.1-cleanup