summaryrefslogtreecommitdiff
path: root/gtk/gtknotebook.c
Commit message (Collapse)AuthorAgeFilesLines
* gtk: Make widget only invalidate widget positionsBenjamin Otte2012-04-171-1/+2
| | | | Instead of resetting them completely
* gtk: Get gtkwidgetpath.h includes out of the public headersBenjamin Otte2012-03-191-0/+1
| | | | and include them in the C files instead.
* Change FSF AddressJavier Jardón2012-02-271-3/+1
|
* GtkNotebook: and another fixClaudio Saavedra2012-02-161-1/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=669116
* GtkNotebook: fix one child-notify emissionClaudio Saavedra2012-02-161-1/+1
| | | | | | Forgot to increase the counter in the for loop, doing it now. https://bugzilla.gnome.org/show_bug.cgi?id=669116
* GtkNotebook: emit child-notify::position on drag 'n drop reorderClaudio Saavedra2012-02-151-4/+11
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=669116
* GtkNotebook: emit child-notify::position on page add/removalClaudio Saavedra2012-02-151-2/+17
| | | | | | | For each page added/removed, notify all the other children changing position. https://bugzilla.gnome.org/show_bug.cgi?id=669116
* GtkNotebook: emit child-notify::position a few more timesClaudio Saavedra2012-02-101-1/+7
| | | | | | | | | | When moving a page around, all children changing their position need to be notified. There are still other places where proper notification is missing (drag 'n drop, etc.) https://bugzilla.gnome.org/show_bug.cgi?id=669116
* gtknotebook: Use symbolic names for button numbersCarlos Garcia Campos2012-01-271-4/+4
|
* notebook: fixup previous commitCosimo Cecchi2012-01-181-7/+0
| | | | Oops, I hit push too early.
* notebook: don't force ACTIVE state flag on the label for active tabCosimo Cecchi2012-01-181-0/+2
| | | | | This is just wrong, since it's not the tab label being active, but the tab itself.
* Revert "GtkNotebook: fix crash when DnD tabs between windows"Matthias Clasen2012-01-151-4/+1
| | | | This reverts commit eeb9de80e17d1915d877c98eabd9a9a1f4423e9c.
* GtkNotebook: fix crash when DnD tabs between windowsXan Lopez2012-01-041-1/+4
| | | | | | | | | | When doing DnD between windows the tab label is set as the child of the DnD info window. If this is happening the remove method of GtkNotebook should not unparent the tab label, since it's been already unparented, belongs to the DnD window and will be properly destroyed when the DnD is over. https://bugzilla.gnome.org/show_bug.cgi?id=639875
* notebook: Use the widget state flags as a base for drawingRui Matos2011-12-191-10/+10
|
* Remove an unused variableMatthias Clasen2011-12-051-2/+0
|
* gtk,notebook: Invalidate the gap side when reordering tabsCarlos Garnacho2011-12-051-0/+73
| | | | | This narrow area is invalidated so the gap follows the tab being reordered.
* notebook: Make the tab reordering dnd window transparentAlexander Larsson2011-12-051-13/+2
|
* notebook: use the current page allocation when computing the redraw areaCosimo Cecchi2011-11-211-11/+2
| | | | | | | | | | Instead of taking the first page and trying to adjust the rect with random padding values, take the current page, as it's always guaranteed to be at least as tall as inactive tabs. This fixes some annoying 1px drawing artifacts while switching tabs when the theme disables notebook padding. https://bugzilla.gnome.org/show_bug.cgi?id=664494
* notebook: properly subtract the initial_gap width from the tab spaceCosimo Cecchi2011-11-211-3/+3
| | | | | | Instead of modifying the allocation. https://bugzilla.gnome.org/show_bug.cgi?id=664494
* notebook: make sure to allocate the CSS border widthCosimo Cecchi2011-11-201-13/+25
| | | | | | | Instead of taking only the CSS padding into account when allocating the notebook children, also allocate the border width. https://bugzilla.gnome.org/show_bug.cgi?id=664342
* notebook: don't leak the action widgetsMichael Natterer2011-11-171-0/+12
| | | | | The notebook owns them, so it must destroy them in destroy(). (cherry picked from commit 87ebfb19fd9422de1d778396770c02e91e6481e8)
* notebook: update tab area allocation when switching pageCosimo Cecchi2011-10-241-5/+2
| | | | | | | | | | | | | When the active page is switched, it's important gtk_notebook_pages_allocate() is called after the bulk of gtk_notebook_real_switch_page() is run, as the former allocates a different space according to the currently active tab, which is set by the latter. gtk_notebook_pages_allocate() already calls gtk_notebook_redraw_tabs() when the allocation changes, so just move its call down to gtk_notebook_real_switch_page() to fix the bug. https://bugzilla.gnome.org/show_bug.cgi?id=662629
* notebook: don't forget to prepare the tab style context before drawingCosimo Cecchi2011-09-291-0/+1
| | | | | The previous commit a9affcdd3f9c888c5e68dc76b0c5173d918bc725 accidentally removed the call to notebook_tab_prepare_style_context()
* notebook: Remove unused variablesBenjamin Otte2011-09-291-3/+0
|
* notebook: vborder/hborder deprecations are Since: 3.4, not 3.2Cosimo Cecchi2011-09-271-2/+2
|
* notebook: add top/bottom/left/right style classes to the tab regionCosimo Cecchi2011-09-271-35/+54
| | | | | | | | When we use the style context to get information for the tab region, also add a style class to indicate its position, so that the relevant information is pulled off from the theme. https://bugzilla.gnome.org/show_bug.cgi?id=659777
* notebook: unconditionally apply padding to the tab contentCosimo Cecchi2011-09-271-8/+4
| | | | | | | Not only when on left or top, otherwise the other position look off-centered. https://bugzilla.gnome.org/show_bug.cgi?id=659777
* notebook: really deprecate tab_vborder and tab_hborderCosimo Cecchi2011-09-271-18/+14
| | | | | | | | | The setter for this was deprecated in 2.x and removed in 3.0. I don't see any reason why we should hardcode 2px for this value; instead, deprecated the getter and make it always return zero, and stop using the variables internally. https://bugzilla.gnome.org/show_bug.cgi?id=659777
* notebook: allow using different padding values for the active tab stateCosimo Cecchi2011-09-271-36/+29
| | | | | | | | | | The code before was basically adding and removing the same padding value in two different places during the allocation cycle. Instead, what we want to do is to offset the inactive tab allocation by the difference with the active tab padding, to ensure the tab content is always drawn centered and in the right position. https://bugzilla.gnome.org/show_bug.cgi?id=659777
* notebook: use the current state to get the padding valuesCosimo Cecchi2011-09-271-2/+14
| | | | | | | | | | | | | | | | | | | | | | We want to enable the use of different padding values between active and inactive tabs, so that the two are completely separated (but limited by the active tab size). This way themes can decide how bigger the active tab is drawn compared to the normal one just specifying a different padding value from the CSS, like this: .notebook tab { padding: 2; } .notebook tab:active { padding: 4; } As a first step, fetch the padding values with the right state flags from GtkStyleContext. https://bugzilla.gnome.org/show_bug.cgi?id=659777
* Bug 659406 - Abstract what triggers a context menuMichael Natterer2011-09-271-1/+1
| | | | | | Add gdk_event_triggers_context_menu(), using the new modifier abstraction API. Remove _gtk_button_event_triggers_context_menu() and port all callers.
* Bug 659406 - Abstract what triggers a context menuMichael Natterer2011-09-261-1/+1
| | | | | | Add _gtk_button_event_triggers_context_menu() and use it instead of checking for event->button == 3, so context menus are invoked correctly on the Mac.
* notebook: Fix child property setters causing underallocationsBenjamin Otte2011-08-271-1/+1
| | | | Don't randomly allocate around, queue resizes instead.
* Squash two compilation warnings about possibly-uninitialzedColin Walters2011-08-251-1/+1
|
* Do not manually create empty labelPaolo Borelli2011-08-151-2/+0
| | | gtk_notebook_update_labels will take care of creating it if needed.
* Make focus rectangles optionalMatthias Clasen2011-08-101-1/+1
| | | | | | | | | | | | | | | | | | This commit introduces a new setting, gtk-visible-focus, backed by the Gtk/VisibleFocus X setting. Its three values control how focus rectangles are displayed. 'always' is equivalent to the traditional GTK+ behaviour of always rendering focus rectangles. 'never' does what it says, and is intended for keyboardless situations, e.g. tablets. 'automatic' hides focus rectangles initially, until the user interacts with the keyboard, at which point focus rectangles become visible. https://bugzilla.gnome.org/show_bug.cgi?id=649567
* notebook: Remove unused private member variableBenjamin Otte2011-07-201-2/+0
|
* notebook: Remove the homogenous private member variableBenjamin Otte2011-07-191-26/+6
| | | | | It's unused and therefor always FALSE, so we can remove the parts of the code that branch based on it.
* Convert GailNotebook to GtkNotebookAccessibleMatthias Clasen2011-07-051-0/+3
|
* Speed up page insertionPaolo Borelli2011-06-261-4/+4
| | | | | Make sure to call widget_set_child_visible(false) on all tabs except the current before calling widget_set_parent.
* gtk: Use const instead G_CONST_RETURNJavier Jardón2011-06-101-2/+2
|
* API: Change semantics of gtk_container_get_child_path()Benjamin Otte2011-06-021-3/+4
| | | | | | Include the child widget path in the returned path now. This allows customizing the path of the current widgets - like adding flags to child widgets (and maybe siblings in the future).
* notebook: Implement height_for_width and width_for_height gettersBenjamin Otte2011-06-021-0/+29
|
* notebook: Rewrite size request function for wfhBenjamin Otte2011-06-021-28/+74
|
* notebook: Split out tabs size computation into its own functionBenjamin Otte2011-06-021-183/+206
|
* notebook: Compute tab width in a simpler wayBenjamin Otte2011-06-011-6/+6
| | | | | | | | This code should be more obvious: The check only needs to check for scrollable widgets, and only needs to compare to tab_width. As a side note, for vis_pages == 1, tab_width will be smaller than tab_max + stuff, so this code will not behave differently.
* notebook: Remove uneeded function declarationBenjamin Otte2011-06-011-2/+0
|
* notebook: Include arrow size in tab size computationBenjamin Otte2011-06-011-6/+3
| | | | | | | | | | | | We don't want tabs to resize when a 2nd page is added, just because the scroll arrows are now visible. And we do want the arrow size to be included. Note: Previosuly this code was never run, as the check requisition->width < tab_width was only run when tab_width wasn't computed, so was still equal to 0 (same for the height). So what this patch essentially does it add the functionality of the if switch.
* gtk/gtknotebook: gtk_misc_set_alignment replacingDiego Celix2011-05-311-2/+4
| | | | | | | | Replacing the function gtk_misc_set_alignment () with gtk_widget_set_halign () and gtk_widget_set_valign () in gtk/gtknotebook.c https://bugzilla.gnome.org/show_bug.cgi?id=650762
* notebook: Match horizontal and vertical code pathsBenjamin Otte2011-04-291-1/+1
| | | | I have no idea what this code does, but it looks better now. :o